JBoss Tools SVN: r26537 - in trunk/jsf/tests/org.jboss.tools.jsf.text.ext.test: src/org/jboss/tools/jsf/text/ext/test and 1 other directory.
by jbosstools-commits@lists.jboss.org
Author: dazarov
Date: 2010-11-13 10:20:54 -0500 (Sat, 13 Nov 2010)
New Revision: 26537
Added:
trunk/jsf/tests/org.jboss.tools.jsf.text.ext.test/src/org/jboss/tools/jsf/text/ext/test/JSF2CompositeOpenOnTest.java
Modified:
trunk/jsf/tests/org.jboss.tools.jsf.text.ext.test/META-INF/MANIFEST.MF
trunk/jsf/tests/org.jboss.tools.jsf.text.ext.test/src/org/jboss/tools/jsf/text/ext/test/JsfTextExtAllTests.java
Log:
https://jira.jboss.org/browse/JBIDE-7460
Modified: trunk/jsf/tests/org.jboss.tools.jsf.text.ext.test/META-INF/MANIFEST.MF
===================================================================
--- trunk/jsf/tests/org.jboss.tools.jsf.text.ext.test/META-INF/MANIFEST.MF 2010-11-13 10:28:03 UTC (rev 26536)
+++ trunk/jsf/tests/org.jboss.tools.jsf.text.ext.test/META-INF/MANIFEST.MF 2010-11-13 15:20:54 UTC (rev 26537)
@@ -23,7 +23,8 @@
org.jboss.tools.jsf.text.ext.facelets;bundle-version="3.1.0",
org.jboss.tools.jsf.text.ext.richfaces;bundle-version="3.1.0",
org.jboss.tools.jsf.ui;bundle-version="3.1.0",
- org.eclipse.jst.standard.schemas
+ org.eclipse.jst.standard.schemas,
+ org.jboss.tools.jsf.test;bundle-version="3.2.0"
Bundle-ActivationPolicy: lazy
Bundle-Vendor: %Bundle-Vendor.0
Export-Package: org.jboss.tools.jsf.text.ext.test
Added: trunk/jsf/tests/org.jboss.tools.jsf.text.ext.test/src/org/jboss/tools/jsf/text/ext/test/JSF2CompositeOpenOnTest.java
===================================================================
--- trunk/jsf/tests/org.jboss.tools.jsf.text.ext.test/src/org/jboss/tools/jsf/text/ext/test/JSF2CompositeOpenOnTest.java (rev 0)
+++ trunk/jsf/tests/org.jboss.tools.jsf.text.ext.test/src/org/jboss/tools/jsf/text/ext/test/JSF2CompositeOpenOnTest.java 2010-11-13 15:20:54 UTC (rev 26537)
@@ -0,0 +1,90 @@
+/*******************************************************************************
+ * Copyright (c) 2010 Exadel, Inc. and 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:
+ * Exadel, Inc. and Red Hat, Inc. - initial API and implementation
+ ******************************************************************************/
+package org.jboss.tools.jsf.text.ext.test;
+
+import junit.framework.TestCase;
+
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.resources.ResourcesPlugin;
+import org.eclipse.jface.text.BadLocationException;
+import org.eclipse.jface.text.FindReplaceDocumentAdapter;
+import org.eclipse.jface.text.IDocument;
+import org.eclipse.jface.text.IRegion;
+import org.eclipse.jface.text.hyperlink.IHyperlink;
+import org.eclipse.jface.text.source.ISourceViewer;
+import org.eclipse.ui.IEditorPart;
+import org.eclipse.ui.IWorkbench;
+import org.eclipse.ui.PartInitException;
+import org.eclipse.ui.PlatformUI;
+import org.jboss.tools.common.text.ext.hyperlink.HyperlinkDetector;
+import org.jboss.tools.jst.jsp.jspeditor.JSPMultiPageEditor;
+import org.jboss.tools.test.util.JobUtils;
+import org.jboss.tools.test.util.WorkbenchUtils;
+
+public class JSF2CompositeOpenOnTest extends TestCase {
+ private static final String PROJECT_NAME = "JSF2ComponentsValidator";
+ private static final String PAGE_NAME = PROJECT_NAME+"/WebContent/resources/demo/input.xhtml";
+ public IProject project = null;
+
+ protected void setUp() {
+ project = ResourcesPlugin.getWorkspace().getRoot().getProject(
+ PROJECT_NAME);
+ PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().closeAllEditors(false);
+ JobUtils.waitForIdle();
+ IWorkbench workbench = PlatformUI.getWorkbench();
+ }
+
+ protected void tearDown() {
+ PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().closeAllEditors(false);
+ }
+
+ public JSF2CompositeOpenOnTest() {
+ super("JSF2 OpenOn on composite test");
+ }
+
+ private void testTag(String tagName, String editorName) throws PartInitException, BadLocationException {
+ JSPMultiPageEditor editor = (JSPMultiPageEditor)WorkbenchUtils.openEditor(PAGE_NAME);
+ JobUtils.waitForIdle();
+ ISourceViewer viewer = editor.getSourceEditor().getTextViewer();
+
+ IDocument document = viewer.getDocument();
+ IRegion reg = new FindReplaceDocumentAdapter(document).find(0,
+ tagName, true, true, false, false);
+ IHyperlink[] links = HyperlinkDetector.getInstance().detectHyperlinks(viewer, reg, false);
+ assertNotNull(links);
+ assertTrue(links.length!=0);
+ assertNotNull(links[0].toString());
+
+ links[0].open();
+ JobUtils.waitForIdle();
+
+ IEditorPart resultEdotor = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().getActiveEditor();
+ assertEquals(editorName, resultEdotor.getTitle());
+ }
+
+ public void testFormOpenOn() throws PartInitException, BadLocationException {
+ testTag("form", "html_basic.tld");
+ }
+
+ public void testOutputTextOpenOn() throws PartInitException, BadLocationException {
+ testTag("outputText", "html_basic.tld");
+ }
+
+ public void testInputTextTextOpenOn() throws PartInitException, BadLocationException {
+ testTag("inputText", "html_basic.tld");
+ }
+
+ public void testCommandButtonOpenOn() throws PartInitException, BadLocationException {
+ testTag("commandButton", "html_basic.tld");
+ }
+
+}
+
Property changes on: trunk/jsf/tests/org.jboss.tools.jsf.text.ext.test/src/org/jboss/tools/jsf/text/ext/test/JSF2CompositeOpenOnTest.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Modified: trunk/jsf/tests/org.jboss.tools.jsf.text.ext.test/src/org/jboss/tools/jsf/text/ext/test/JsfTextExtAllTests.java
===================================================================
--- trunk/jsf/tests/org.jboss.tools.jsf.text.ext.test/src/org/jboss/tools/jsf/text/ext/test/JsfTextExtAllTests.java 2010-11-13 10:28:03 UTC (rev 26536)
+++ trunk/jsf/tests/org.jboss.tools.jsf.text.ext.test/src/org/jboss/tools/jsf/text/ext/test/JsfTextExtAllTests.java 2010-11-13 15:20:54 UTC (rev 26537)
@@ -23,7 +23,10 @@
"org.jboss.tools.jsf.text.ext.test",
new String[]{"projects/HiperlinksTestProject"},
new String[]{"HiperlinksTestProject"}));
-
+ suite.addTest(new ProjectImportTestSetup(new TestSuite(JSF2CompositeOpenOnTest.class),
+ "org.jboss.tools.jsf.test",
+ new String[]{"projects/JSF2ComponentsValidator"},
+ new String[]{"JSF2ComponentsValidator"}));
return suite;
}
}
\ No newline at end of file
15 years, 5 months
JBoss Tools SVN: r26536 - trunk/build.
by jbosstools-commits@lists.jboss.org
Author: dgolovin
Date: 2010-11-13 05:28:03 -0500 (Sat, 13 Nov 2010)
New Revision: 26536
Modified:
trunk/build/pom.xml
Log:
https://jira.jboss.org/browse/JBIDE-7440 Between build #79 and #80, 874 tests disappeared
emma-coverage profile removed, not required anymore. moved to root pom.xml
Modified: trunk/build/pom.xml
===================================================================
--- trunk/build/pom.xml 2010-11-13 10:09:55 UTC (rev 26535)
+++ trunk/build/pom.xml 2010-11-13 10:28:03 UTC (rev 26536)
@@ -555,18 +555,6 @@
</profile>
<profile>
- <id>emma-coverage</id>
- <!--activation>
- <property>
- <name>coverage</name>
- </property>
- </activation-->
- <modules>
- <module>reports/emma-coverage</module>
- </modules>
- </profile>
-
- <profile>
<id>gwt</id>
<activation>
<activeByDefault>true</activeByDefault>
15 years, 5 months
JBoss Tools SVN: r26535 - in trunk: build and 1 other directory.
by jbosstools-commits@lists.jboss.org
Author: dgolovin
Date: 2010-11-13 05:09:55 -0500 (Sat, 13 Nov 2010)
New Revision: 26535
Modified:
trunk/build/pom.xml
trunk/pom.xml
Log:
fix for test build:
coveraget property replaced with coverage profile
Modified: trunk/build/pom.xml
===================================================================
--- trunk/build/pom.xml 2010-11-13 09:43:10 UTC (rev 26534)
+++ trunk/build/pom.xml 2010-11-13 10:09:55 UTC (rev 26535)
@@ -10,7 +10,7 @@
<profiles>
- <profile>
+ <!--profile>
<id>libs</id>
<activation>
<property>
@@ -20,7 +20,7 @@
<modules>
<module>libs</module>
</modules>
- </profile>
+ </profile-->
<profile>
<id>tests</id>
@@ -556,11 +556,11 @@
<profile>
<id>emma-coverage</id>
- <activation>
+ <!--activation>
<property>
<name>coverage</name>
</property>
- </activation>
+ </activation-->
<modules>
<module>reports/emma-coverage</module>
</modules>
Modified: trunk/pom.xml
===================================================================
--- trunk/pom.xml 2010-11-13 09:43:10 UTC (rev 26534)
+++ trunk/pom.xml 2010-11-13 10:09:55 UTC (rev 26535)
@@ -8,8 +8,9 @@
<packaging>pom</packaging>
<modules>
<module>build/parent</module>
- <!--module>build/libs</module-->
+ <module>build/libs</module>
<module>build</module>
+ <module>build/reports/emma-coverage</module>
</modules>
</project>
15 years, 5 months
JBoss Tools SVN: r26534 - trunk.
by jbosstools-commits@lists.jboss.org
Author: dgolovin
Date: 2010-11-13 04:43:10 -0500 (Sat, 13 Nov 2010)
New Revision: 26534
Modified:
trunk/pom.xml
Log:
build/lib module removed from root pom.xml
Modified: trunk/pom.xml
===================================================================
--- trunk/pom.xml 2010-11-13 02:12:20 UTC (rev 26533)
+++ trunk/pom.xml 2010-11-13 09:43:10 UTC (rev 26534)
@@ -8,7 +8,7 @@
<packaging>pom</packaging>
<modules>
<module>build/parent</module>
- <module>build/libs</module>
+ <!--module>build/libs</module-->
<module>build</module>
</modules>
15 years, 5 months
JBoss Tools SVN: r26533 - in trunk/jst/tests/org.jboss.tools.jst.jsp.test: src/org/jboss/tools/jst/jsp/test and 1 other directory.
by jbosstools-commits@lists.jboss.org
Author: dgolovin
Date: 2010-11-12 21:12:20 -0500 (Fri, 12 Nov 2010)
New Revision: 26533
Modified:
trunk/jst/tests/org.jboss.tools.jst.jsp.test/META-INF/MANIFEST.MF
trunk/jst/tests/org.jboss.tools.jst.jsp.test/src/org/jboss/tools/jst/jsp/test/JstJspAllTests.java
Log:
https://jira.jboss.org/browse/JBIDE-7575 Build error in org.jboss.tools.jst.jsp.test
rference to neweditor.sidebyside plugin is removed, test disabled
Modified: trunk/jst/tests/org.jboss.tools.jst.jsp.test/META-INF/MANIFEST.MF
===================================================================
--- trunk/jst/tests/org.jboss.tools.jst.jsp.test/META-INF/MANIFEST.MF 2010-11-12 22:50:25 UTC (rev 26532)
+++ trunk/jst/tests/org.jboss.tools.jst.jsp.test/META-INF/MANIFEST.MF 2010-11-13 02:12:20 UTC (rev 26533)
@@ -17,8 +17,7 @@
org.jboss.tools.jst.web,
org.jboss.tools.common.text.xml,
org.jboss.tools.jst.web.kb,
- org.eclipse.jst.standard.schemas,
- org.jboss.tools.neweditor.sidebyside
+ org.eclipse.jst.standard.schemas
Export-Package:
org.jboss.tools.jst.jsp.test,
org.jboss.tools.jst.jsp.test.ca
Modified: trunk/jst/tests/org.jboss.tools.jst.jsp.test/src/org/jboss/tools/jst/jsp/test/JstJspAllTests.java
===================================================================
--- trunk/jst/tests/org.jboss.tools.jst.jsp.test/src/org/jboss/tools/jst/jsp/test/JstJspAllTests.java 2010-11-12 22:50:25 UTC (rev 26532)
+++ trunk/jst/tests/org.jboss.tools.jst.jsp.test/src/org/jboss/tools/jst/jsp/test/JstJspAllTests.java 2010-11-13 02:12:20 UTC (rev 26533)
@@ -38,7 +38,6 @@
suite.addTestSuite(SelectionBarTest.class);
suite.addTestSuite(ExternalizeCommandTest.class);
- suite.addTestSuite(NewEditorSideBySideCommandTest.class);
return suite;
}
15 years, 5 months
JBoss Tools SVN: r26532 - in trunk/bpel/plugins: org.eclipse.bpel.apache.ode.runtime/src/org/eclipse/bpel/apache/ode/runtime and 3 other directories.
by jbosstools-commits@lists.jboss.org
Author: bbrodt
Date: 2010-11-12 17:50:25 -0500 (Fri, 12 Nov 2010)
New Revision: 26532
Added:
trunk/bpel/plugins/org.eclipse.bpel.apache.ode.runtime/src/org/eclipse/bpel/apache/ode/runtime/OdeServerRuntime.java
trunk/bpel/plugins/org.eclipse.bpel.runtimes/src/org/eclipse/bpel/runtimes/IBPELRuntimeDelegate.java
Modified:
trunk/bpel/plugins/org.eclipse.bpel.apache.ode.runtime/plugin.xml
trunk/bpel/plugins/org.eclipse.bpel.ui/META-INF/MANIFEST.MF
trunk/bpel/plugins/org.eclipse.bpel.ui/src/org/eclipse/bpel/ui/wizards/NewFileWizard.java
trunk/bpel/plugins/org.eclipse.bpel.ui/src/org/eclipse/bpel/ui/wizards/WSDLCustomPage.java
Log:
OPEN - issue JBIDE-6588: BPEL deployment to ODE running in Tomcat
https://jira.jboss.org/browse/JBIDE-6588
This change has zero net effect - just preparation for switching to generic runtime support in BPEL designer
Modified: trunk/bpel/plugins/org.eclipse.bpel.apache.ode.runtime/plugin.xml
===================================================================
--- trunk/bpel/plugins/org.eclipse.bpel.apache.ode.runtime/plugin.xml 2010-11-12 22:22:20 UTC (rev 26531)
+++ trunk/bpel/plugins/org.eclipse.bpel.apache.ode.runtime/plugin.xml 2010-11-12 22:50:25 UTC (rev 26532)
@@ -8,7 +8,7 @@
description="Apache's BPEL 2.0 execution engine - Runtime"
vendor="Apache"
version="1.0"
- class="org.eclipse.jst.server.generic.core.internal.GenericServerRuntime">
+ class="org.eclipse.bpel.apache.ode.runtime.OdeServerRuntime">
<moduleType
types="bpel.module"
versions="1.1, 2.0"/>
Added: trunk/bpel/plugins/org.eclipse.bpel.apache.ode.runtime/src/org/eclipse/bpel/apache/ode/runtime/OdeServerRuntime.java
===================================================================
--- trunk/bpel/plugins/org.eclipse.bpel.apache.ode.runtime/src/org/eclipse/bpel/apache/ode/runtime/OdeServerRuntime.java (rev 0)
+++ trunk/bpel/plugins/org.eclipse.bpel.apache.ode.runtime/src/org/eclipse/bpel/apache/ode/runtime/OdeServerRuntime.java 2010-11-12 22:50:25 UTC (rev 26532)
@@ -0,0 +1,16 @@
+package org.eclipse.bpel.apache.ode.runtime;
+
+import java.util.HashMap;
+import java.util.Map;
+
+import org.eclipse.jst.server.generic.core.internal.GenericServerRuntime;
+import org.eclipse.bpel.runtimes.IBPELRuntimeDelegate;
+
+public class OdeServerRuntime extends GenericServerRuntime implements IBPELRuntimeDelegate {
+
+ public String getPort()
+ {
+ Map m = getAttribute("generic_server_attributes", new HashMap());
+ return (String)m.get("port");
+ }
+}
Added: trunk/bpel/plugins/org.eclipse.bpel.runtimes/src/org/eclipse/bpel/runtimes/IBPELRuntimeDelegate.java
===================================================================
--- trunk/bpel/plugins/org.eclipse.bpel.runtimes/src/org/eclipse/bpel/runtimes/IBPELRuntimeDelegate.java (rev 0)
+++ trunk/bpel/plugins/org.eclipse.bpel.runtimes/src/org/eclipse/bpel/runtimes/IBPELRuntimeDelegate.java 2010-11-12 22:50:25 UTC (rev 26532)
@@ -0,0 +1,7 @@
+package org.eclipse.bpel.runtimes;
+
+public interface IBPELRuntimeDelegate {
+
+ public String getPort();
+
+}
Modified: trunk/bpel/plugins/org.eclipse.bpel.ui/META-INF/MANIFEST.MF
===================================================================
--- trunk/bpel/plugins/org.eclipse.bpel.ui/META-INF/MANIFEST.MF 2010-11-12 22:22:20 UTC (rev 26531)
+++ trunk/bpel/plugins/org.eclipse.bpel.ui/META-INF/MANIFEST.MF 2010-11-12 22:50:25 UTC (rev 26532)
@@ -31,7 +31,9 @@
org.eclipse.ui.console;bundle-version="3.5.0",
org.eclipse.wst.common.modulecore,
org.eclipse.wst.common.emfworkbench.integration,
- org.eclipse.jem.util
+ org.eclipse.jem.util,
+ org.eclipse.wst.common.project.facet.core,
+ org.eclipse.wst.server.core
Bundle-ActivationPolicy: lazy
Export-Package: org.eclipse.bpel.ui,
org.eclipse.bpel.ui.actions,
@@ -70,4 +72,7 @@
org.eclipse.bpel.ui.util.marker,
org.eclipse.bpel.ui.wizards
Bundle-RequiredExecutionEnvironment: J2SE-1.5
-Import-Package: org.eclipse.bpel.validator
+Import-Package: org.eclipse.bpel.runtimes,
+ org.eclipse.bpel.validator,
+ org.eclipse.wst.common.project.facet.core,
+ org.eclipse.wst.server.core
Modified: trunk/bpel/plugins/org.eclipse.bpel.ui/src/org/eclipse/bpel/ui/wizards/NewFileWizard.java
===================================================================
--- trunk/bpel/plugins/org.eclipse.bpel.ui/src/org/eclipse/bpel/ui/wizards/NewFileWizard.java 2010-11-12 22:22:20 UTC (rev 26531)
+++ trunk/bpel/plugins/org.eclipse.bpel.ui/src/org/eclipse/bpel/ui/wizards/NewFileWizard.java 2010-11-12 22:50:25 UTC (rev 26532)
@@ -203,6 +203,16 @@
return true;
}
+ public IProject getProject()
+ {
+ IContainer container = fContainerPage.getResourceContainer();
+ if (container == null) {
+ container = mContainer;
+ }
+ if (container!=null)
+ return container.getProject();
+ return null;
+ }
/**
* Return the BPEL files container in which we can generate process from the
* template.
Modified: trunk/bpel/plugins/org.eclipse.bpel.ui/src/org/eclipse/bpel/ui/wizards/WSDLCustomPage.java
===================================================================
--- trunk/bpel/plugins/org.eclipse.bpel.ui/src/org/eclipse/bpel/ui/wizards/WSDLCustomPage.java 2010-11-12 22:22:20 UTC (rev 26531)
+++ trunk/bpel/plugins/org.eclipse.bpel.ui/src/org/eclipse/bpel/ui/wizards/WSDLCustomPage.java 2010-11-12 22:50:25 UTC (rev 26532)
@@ -3,10 +3,14 @@
import java.util.HashMap;
import java.util.Map;
+import org.eclipse.bpel.runtimes.IBPELModuleFacetConstants;
import org.eclipse.bpel.ui.BPELUIPlugin;
import org.eclipse.bpel.ui.IBPELUIConstants;
import org.eclipse.bpel.ui.Templates;
import org.eclipse.bpel.ui.Templates.Template;
+import org.eclipse.bpel.runtimes.IBPELRuntimeDelegate;
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.resources.ResourcesPlugin;
import org.eclipse.jface.wizard.WizardPage;
import org.eclipse.osgi.util.NLS;
import org.eclipse.swt.SWT;
@@ -19,6 +23,14 @@
import org.eclipse.swt.widgets.Label;
import org.eclipse.swt.widgets.Listener;
import org.eclipse.swt.widgets.Text;
+import org.eclipse.wst.common.project.facet.core.IFacetedProject;
+import org.eclipse.wst.common.project.facet.core.IProjectFacet;
+import org.eclipse.wst.common.project.facet.core.ProjectFacetsManager;
+import org.eclipse.wst.common.project.facet.core.runtime.IRuntime;
+import org.eclipse.wst.server.core.IRuntimeType;
+import org.eclipse.wst.server.core.IRuntimeWorkingCopy;
+import org.eclipse.wst.server.core.ServerCore;
+import org.eclipse.wst.server.core.model.RuntimeDelegate;
public class WSDLCustomPage extends WizardPage {
@@ -64,6 +76,34 @@
setDescription(Messages.NewFileWizard_WSDLCustomPage_Description);
setImageDescriptor(BPELUIPlugin.INSTANCE
.getImageDescriptor(IBPELUIConstants.ICON_WIZARD_BANNER));
+
+
+ // TODO: test code - implement this when we switch over to generic runtime support
+ // for deployment to jboss/riftsaw and others...
+ try {
+ IProject project = ((NewFileWizard)getWizard()).getProject();
+ IFacetedProject facetedProject = null;
+ facetedProject = ProjectFacetsManager.create(project);
+ if (facetedProject != null
+ && ProjectFacetsManager.isProjectFacetDefined(IBPELModuleFacetConstants.BPEL20_PROJECT_FACET))
+ {
+ IProjectFacet projectFacet = ProjectFacetsManager.getProjectFacet(IBPELModuleFacetConstants.BPEL20_PROJECT_FACET);
+ IRuntime rt = facetedProject.getPrimaryRuntime();
+ String id = rt.getProperty("id");
+ org.eclipse.wst.server.core.IRuntime rt2 = ServerCore.findRuntime(id);
+ IRuntimeType rtt = rt2.getRuntimeType();
+ RuntimeDelegate delegate = (RuntimeDelegate) rt2.getAdapter(RuntimeDelegate.class);
+ if (delegate instanceof IBPELRuntimeDelegate) {
+ // get port, server address and deploy directory
+ // to build service name for WSDL
+ }
+ }
+ }
+ catch(Exception e)
+ {
+
+ }
+
}
public void createControl(Composite parent) {
15 years, 5 months
JBoss Tools SVN: r26531 - trunk/build/parent.
by jbosstools-commits@lists.jboss.org
Author: nickboldt
Date: 2010-11-12 17:22:20 -0500 (Fri, 12 Nov 2010)
New Revision: 26531
Modified:
trunk/build/parent/pom.xml
Log:
stupid autoformatting bug
Modified: trunk/build/parent/pom.xml
===================================================================
--- trunk/build/parent/pom.xml 2010-11-12 20:05:03 UTC (rev 26530)
+++ trunk/build/parent/pom.xml 2010-11-12 22:22:20 UTC (rev 26531)
@@ -139,8 +139,7 @@
<useUIHarness>true</useUIHarness>
<useUIThread>true</useUIThread>
<!-- THE FOLLOWING LINE MUST NOT BE BROKEN BY AUTOFORMATTING -->
- <argLine>${memoryOptions1} ${memoryOptions2} ${systemProperties}
- -Dusage_reporting_enabled=false</argLine>
+ <argLine>${memoryOptions1} ${memoryOptions2} ${systemProperties} -Dusage_reporting_enabled=false</argLine>
<!-- https://docs.sonatype.org/display/TYCHO/How+to+run+SWTBot+tests+with+Tycho -->
<!-- set useUIThread=true for regular ui tests -->
<!-- set useUIThread=false for swtbot tests (?) -->
@@ -579,8 +578,7 @@
</activation>
<properties>
<!-- THE FOLLOWING LINE MUST NOT BE BROKEN BY AUTOFORMATTING -->
- <systemProperties combine.children="append"> -d32
- -Dosgi.arch=x86 -XstartOnFirstThread </systemProperties>
+ <systemProperties combine.children="append"> -d32 -Dosgi.arch=x86 -XstartOnFirstThread </systemProperties>
</properties>
</profile>
15 years, 5 months
JBoss Tools SVN: r26530 - in trunk/smooks: plugins/org.jboss.tools.smooks.templating/src/org/jboss/tools/smooks/templating/template and 8 other directories.
by jbosstools-commits@lists.jboss.org
Author: tfennelly
Date: 2010-11-12 15:05:03 -0500 (Fri, 12 Nov 2010)
New Revision: 26530
Added:
trunk/smooks/plugins/org.jboss.tools.smooks.templating/src/org/jboss/tools/smooks/templating/template/result/
trunk/smooks/plugins/org.jboss.tools.smooks.templating/src/org/jboss/tools/smooks/templating/template/result/AddCollectionResult.java
trunk/smooks/plugins/org.jboss.tools.smooks.templating/src/org/jboss/tools/smooks/templating/template/result/RemoveResult.java
Modified:
trunk/smooks/plugins/org.jboss.tools.smooks.templating/META-INF/MANIFEST.MF
trunk/smooks/plugins/org.jboss.tools.smooks.templating/src/org/jboss/tools/smooks/templating/template/Mapping.java
trunk/smooks/plugins/org.jboss.tools.smooks.templating/src/org/jboss/tools/smooks/templating/template/TemplateBuilder.java
trunk/smooks/plugins/org.jboss.tools.smooks.templating/src/org/jboss/tools/smooks/templating/template/freemarker/FreeMarkerTemplateBuilder.java
trunk/smooks/plugins/org.jboss.tools.smooks.templating/src/org/jboss/tools/smooks/templating/template/util/FreeMarkerUtil.java
trunk/smooks/plugins/org.jboss.tools.smooks.templating/src/org/jboss/tools/smooks/templating/template/xml/XMLFreeMarkerTemplateBuilder.java
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/gef/model/AbstractSmooksGraphicalModel.java
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/gef/tree/model/TreeNodeConnection.java
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/gef/tree/model/TreeNodeModel.java
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/graphical/editors/model/freemarker/FreemarkerTemplateNodeGraphicalModel.java
trunk/smooks/tests/org.jboss.tools.smooks.templating.test/src/org/jboss/tools/smooks/templating/template/xml/XMLSampleXMLFreeMarkerTemplateBuilderTest.java
trunk/smooks/tests/org.jboss.tools.smooks.templating.test/src/org/jboss/tools/smooks/templating/template/xml/XSDXMLFreeMarkerTemplateBuilderTest.java
Log:
https://jira.jboss.org/browse/JBIDE-7097
Removing a CollectionMapping should also remove all sub-mappings
https://jira.jboss.org/browse/JBIDE-7574
Delete sub mappings on CollectionMapping addition
Modified: trunk/smooks/plugins/org.jboss.tools.smooks.templating/META-INF/MANIFEST.MF
===================================================================
--- trunk/smooks/plugins/org.jboss.tools.smooks.templating/META-INF/MANIFEST.MF 2010-11-12 19:00:05 UTC (rev 26529)
+++ trunk/smooks/plugins/org.jboss.tools.smooks.templating/META-INF/MANIFEST.MF 2010-11-12 20:05:03 UTC (rev 26530)
@@ -42,6 +42,7 @@
org.jboss.tools.smooks.templating.template.csv,
org.jboss.tools.smooks.templating.template.exception,
org.jboss.tools.smooks.templating.template.freemarker,
+ org.jboss.tools.smooks.templating.template.result,
org.jboss.tools.smooks.templating.template.util,
org.jboss.tools.smooks.templating.template.xml
Bundle-Activator: org.jboss.tools.smooks.templating.SmooksTemplatingActivator
Modified: trunk/smooks/plugins/org.jboss.tools.smooks.templating/src/org/jboss/tools/smooks/templating/template/Mapping.java
===================================================================
--- trunk/smooks/plugins/org.jboss.tools.smooks.templating/src/org/jboss/tools/smooks/templating/template/Mapping.java 2010-11-12 19:00:05 UTC (rev 26529)
+++ trunk/smooks/plugins/org.jboss.tools.smooks.templating/src/org/jboss/tools/smooks/templating/template/Mapping.java 2010-11-12 20:05:03 UTC (rev 26530)
@@ -24,7 +24,6 @@
import org.eclipse.core.runtime.Assert;
import org.jboss.tools.smooks.templating.model.ModelBuilder;
-import org.w3c.dom.Attr;
import org.w3c.dom.Node;
/**
Modified: trunk/smooks/plugins/org.jboss.tools.smooks.templating/src/org/jboss/tools/smooks/templating/template/TemplateBuilder.java
===================================================================
--- trunk/smooks/plugins/org.jboss.tools.smooks.templating/src/org/jboss/tools/smooks/templating/template/TemplateBuilder.java 2010-11-12 19:00:05 UTC (rev 26529)
+++ trunk/smooks/plugins/org.jboss.tools.smooks.templating/src/org/jboss/tools/smooks/templating/template/TemplateBuilder.java 2010-11-12 20:05:03 UTC (rev 26530)
@@ -40,10 +40,13 @@
import org.jboss.tools.smooks.templating.template.exception.InvalidMappingException;
import org.jboss.tools.smooks.templating.template.exception.TemplateBuilderException;
import org.jboss.tools.smooks.templating.template.exception.UnmappedCollectionNodeException;
+import org.jboss.tools.smooks.templating.template.result.AddCollectionResult;
+import org.jboss.tools.smooks.templating.template.result.RemoveResult;
import org.jboss.tools.smooks.templating.template.util.FreeMarkerUtil;
import org.milyn.xml.DomUtils;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
+import org.w3c.dom.NamedNodeMap;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
@@ -159,26 +162,29 @@
* @throws InvalidMappingException
* Invalid mapping.
*/
- public CollectionMapping addCollectionMapping(String srcCollectionPath, Element modelCollectionPath, String collectionItemName)
- throws InvalidMappingException {
+ public AddCollectionResult addCollectionMapping(String srcCollectionPath, Element modelCollectionPath, String collectionItemName) throws InvalidMappingException {
asserValidMappingNode(modelCollectionPath);
assertCollectionsMapped(modelCollectionPath.getParentNode());
CollectionMapping mapping = new CollectionMapping(srcCollectionPath, modelCollectionPath, collectionItemName);
mappings.add(mapping);
addHideNodes(modelCollectionPath, mapping);
+
+ List<Mapping> removeMappings = new ArrayList<Mapping>();
+ findChildMappings(modelCollectionPath, mapping, parseSourcePath(mapping), removeMappings);
+
+ AddCollectionResult result = new AddCollectionResult(mapping, removeMappings);
- return mapping;
+ return result;
}
/**
- * Remove the specified mapping
+ * Remove the specified mapping.
*
- * @param mapping
- * The mapping instance to be removed.
- * @return A list of hidden Nodes that should be shown again.
+ * @param mapping The mapping instance to be removed.
+ * @return The remove mapping result.
*/
- public List<Node> removeMapping(Mapping mapping) {
+ public RemoveResult removeMapping(Mapping mapping) {
List<Node> showNodes = new ArrayList<Node>();
mappings.remove(mapping);
@@ -194,7 +200,13 @@
}
}
- return showNodes;
+ // If the mapping is a collection mapping, we need to remove all child mappings...
+ List<Mapping> removeMappings = new ArrayList<Mapping>();
+ if(mapping instanceof CollectionMapping) {
+ findChildMappings((Element)mapping.getMappingNode(), (CollectionMapping)mapping, parseSourcePath(mapping), removeMappings);
+ }
+
+ return new RemoveResult(removeMappings, showNodes);
}
private void addHideNodes(Node modelPath, Mapping mapping) {
@@ -214,6 +226,65 @@
}
}
+ private void findChildMappings(Element modelPath, CollectionMapping collectionMapping, String[] srcPathTokens, List<Mapping> mappings) {
+ // Find any Mappings to nodes inside the collection mapping node,
+ // where that mapping's source path is also inside the mapping source path of
+ // the supplied collection mapping...
+
+ // Check the attributes...
+ NamedNodeMap attributes = modelPath.getAttributes();
+ int attribCount = attributes.getLength();
+ for(int i = 0; i < attribCount; i++) {
+ Node attribNode = attributes.item(i);
+ Mapping attribMapping = getMapping(attribNode);
+
+ if(attribMapping != null && attribMapping != collectionMapping) {
+ String[] attribMappingSrcPathTokens = parseSourcePath(attribMapping);
+ if(isChildSourceMapping(attribMappingSrcPathTokens, srcPathTokens)) {
+ mappings.add(attribMapping);
+ }
+ }
+ }
+
+ // Check the child elements, drilling down recursively ...
+ NodeList childNodes = modelPath.getChildNodes();
+ int childCount = childNodes.getLength();
+ for(int i = 0; i < childCount; i++) {
+ Node childNode = childNodes.item(i);
+
+ if(childNode.getNodeType() == Node.ELEMENT_NODE) {
+ Mapping childMapping = getMapping(childNode);
+
+ if(childMapping != null && childMapping != collectionMapping) {
+ String[] childMappingSrcPathTokens = parseSourcePath(childMapping);
+
+ if(childMappingSrcPathTokens.length > 0 && childMappingSrcPathTokens[0].equals(collectionMapping.getCollectionItemName())) {
+ mappings.add(childMapping);
+ } else if(isChildSourceMapping(childMappingSrcPathTokens, srcPathTokens)) {
+ mappings.add(childMapping);
+ }
+ }
+
+ // Drill down recursively...
+ findChildMappings((Element) childNode, collectionMapping, srcPathTokens, mappings);
+ }
+ }
+ }
+
+ private boolean isChildSourceMapping(String[] childSrcPathTokens, String[] srcPathTokens) {
+ if(childSrcPathTokens.length < srcPathTokens.length) {
+ return false;
+ }
+
+ for(int i = 0; i < srcPathTokens.length; i++) {
+ if(!srcPathTokens[i].equals(childSrcPathTokens[i])) {
+ return false;
+ }
+ }
+
+ return true;
+ }
+
private void hideUnmappedPaths(Element compositor, Mapping mapping) {
NodeList children = compositor.getChildNodes();
int numChildren = children.getLength();
@@ -423,6 +494,7 @@
}
protected void addValueMapping(Node modelNode, String dollarVariable) throws TemplateBuilderException, InvalidMappingException {
+ // TODO: Need to get all FreeMarker specific code out of here and pushed down into the FreeMarkerTemplateBuilder class
String srcPath = FreeMarkerUtil.extractJavaPath(dollarVariable);
String rawFormatting = FreeMarkerUtil.extractRawFormatting(dollarVariable);
@@ -442,7 +514,7 @@
* @return The fully resolved path.
*/
public String resolveMappingSrcPath(Mapping mapping) {
- String[] srcPathTokens = mapping.getSrcPath().split("/");
+ String[] srcPathTokens = parseSourcePath(mapping);
if(srcPathTokens.length > 1) {
CollectionMapping parentCollection = findParentCollection(srcPathTokens[0], mapping);
@@ -463,6 +535,10 @@
return mapping.getSrcPath();
}
+ protected String[] parseSourcePath(Mapping mapping) {
+ return mapping.getSrcPath().split("/");
+ }
+
public CollectionMapping findParentCollection(String collectionName, Mapping mapping) {
CollectionMapping parentCollection = findCollection(collectionName);
Modified: trunk/smooks/plugins/org.jboss.tools.smooks.templating/src/org/jboss/tools/smooks/templating/template/freemarker/FreeMarkerTemplateBuilder.java
===================================================================
--- trunk/smooks/plugins/org.jboss.tools.smooks.templating/src/org/jboss/tools/smooks/templating/template/freemarker/FreeMarkerTemplateBuilder.java 2010-11-12 19:00:05 UTC (rev 26529)
+++ trunk/smooks/plugins/org.jboss.tools.smooks.templating/src/org/jboss/tools/smooks/templating/template/freemarker/FreeMarkerTemplateBuilder.java 2010-11-12 20:05:03 UTC (rev 26530)
@@ -13,9 +13,11 @@
import org.jboss.tools.smooks.templating.model.ModelBuilder;
import org.jboss.tools.smooks.templating.model.ModelBuilderException;
import org.jboss.tools.smooks.templating.template.CollectionMapping;
+import org.jboss.tools.smooks.templating.template.Mapping;
import org.jboss.tools.smooks.templating.template.TemplateBuilder;
import org.jboss.tools.smooks.templating.template.ValueMapping;
import org.jboss.tools.smooks.templating.template.exception.InvalidMappingException;
+import org.jboss.tools.smooks.templating.template.result.AddCollectionResult;
import org.jboss.tools.smooks.templating.template.util.FreeMarkerUtil;
import org.w3c.dom.Element;
import org.w3c.dom.Node;
@@ -46,9 +48,11 @@
}
@Override
- public CollectionMapping addCollectionMapping(String srcCollectionPath, Element modelCollectionPath, String collectionItemName) throws InvalidMappingException {
+ public AddCollectionResult addCollectionMapping(String srcCollectionPath, Element modelCollectionPath, String collectionItemName) throws InvalidMappingException {
return super.addCollectionMapping(FreeMarkerUtil.normalizePath(srcCollectionPath), modelCollectionPath, collectionItemName);
}
-
+ protected String[] parseSourcePath(Mapping mapping) {
+ return FreeMarkerUtil.toPathTokens(mapping.getSrcPath());
+ }
}
Added: trunk/smooks/plugins/org.jboss.tools.smooks.templating/src/org/jboss/tools/smooks/templating/template/result/AddCollectionResult.java
===================================================================
--- trunk/smooks/plugins/org.jboss.tools.smooks.templating/src/org/jboss/tools/smooks/templating/template/result/AddCollectionResult.java (rev 0)
+++ trunk/smooks/plugins/org.jboss.tools.smooks.templating/src/org/jboss/tools/smooks/templating/template/result/AddCollectionResult.java 2010-11-12 20:05:03 UTC (rev 26530)
@@ -0,0 +1,45 @@
+/*******************************************************************************
+ * 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.templating.template.result;
+
+import java.util.List;
+
+import org.jboss.tools.smooks.templating.template.CollectionMapping;
+import org.jboss.tools.smooks.templating.template.Mapping;
+import org.w3c.dom.Node;
+
+/**
+ * Add collection {@link Mapping} result.
+ *
+ * @author <a href="mailto:tom.fennelly@gmail.com">tom.fennelly(a)gmail.com</a>
+ */
+public class AddCollectionResult {
+
+ private CollectionMapping mapping;
+ private List<Mapping> removeMappings;
+
+ public AddCollectionResult(CollectionMapping mapping, List<Mapping> removeMappings) {
+ this.mapping = mapping;
+ this.removeMappings = removeMappings;
+ }
+
+ public CollectionMapping getMapping() {
+ return mapping;
+ }
+
+ public List<Node> getHideNodes() {
+ return mapping.getHideNodes();
+ }
+
+ public List<Mapping> getRemoveMappings() {
+ return removeMappings;
+ }
+}
Property changes on: trunk/smooks/plugins/org.jboss.tools.smooks.templating/src/org/jboss/tools/smooks/templating/template/result/AddCollectionResult.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added: trunk/smooks/plugins/org.jboss.tools.smooks.templating/src/org/jboss/tools/smooks/templating/template/result/RemoveResult.java
===================================================================
--- trunk/smooks/plugins/org.jboss.tools.smooks.templating/src/org/jboss/tools/smooks/templating/template/result/RemoveResult.java (rev 0)
+++ trunk/smooks/plugins/org.jboss.tools.smooks.templating/src/org/jboss/tools/smooks/templating/template/result/RemoveResult.java 2010-11-12 20:05:03 UTC (rev 26530)
@@ -0,0 +1,40 @@
+/*******************************************************************************
+ * 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.templating.template.result;
+
+import java.util.List;
+
+import org.jboss.tools.smooks.templating.template.Mapping;
+import org.w3c.dom.Node;
+
+/**
+ * Remove {@link Mapping} result.
+ *
+ * @author <a href="mailto:tom.fennelly@gmail.com">tom.fennelly(a)gmail.com</a>
+ */
+public class RemoveResult {
+
+ private List<Mapping> removeMappings;
+ private List<Node> showNodes;
+
+ public RemoveResult(List<Mapping> removeMappings, List<Node> showNodes) {
+ this.removeMappings = removeMappings;
+ this.showNodes = showNodes;
+ }
+
+ public List<Mapping> getRemoveMappings() {
+ return removeMappings;
+ }
+
+ public List<Node> getShowNodes() {
+ return showNodes;
+ }
+}
Property changes on: trunk/smooks/plugins/org.jboss.tools.smooks.templating/src/org/jboss/tools/smooks/templating/template/result/RemoveResult.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Modified: trunk/smooks/plugins/org.jboss.tools.smooks.templating/src/org/jboss/tools/smooks/templating/template/util/FreeMarkerUtil.java
===================================================================
--- trunk/smooks/plugins/org.jboss.tools.smooks.templating/src/org/jboss/tools/smooks/templating/template/util/FreeMarkerUtil.java 2010-11-12 19:00:05 UTC (rev 26529)
+++ trunk/smooks/plugins/org.jboss.tools.smooks.templating/src/org/jboss/tools/smooks/templating/template/util/FreeMarkerUtil.java 2010-11-12 20:05:03 UTC (rev 26530)
@@ -154,4 +154,25 @@
return srcPath;
}
}
+
+ public static String[] toPathTokens(String srcPath) {
+ Matcher matcher = varsPattern.matcher(srcPath);
+ if(matcher.matches()) {
+ return (matcher.group(1) + "/" + matcher.group(2)).split("/");
+ } else if(srcPath.indexOf("/") != -1) {
+ if(srcPath.startsWith("/")) {
+ return srcPath.substring(1).split("/");
+ } else {
+ return srcPath.split("/");
+ }
+ } else {
+ // TODO: Old style used a dot... need to standardize all templating code to use forward slash.
+ return srcPath.split(".");
+ }
+ }
+
+ public static boolean isVarsFormat(String srcPath) {
+ Matcher matcher = varsPattern.matcher(srcPath);
+ return matcher.matches();
+ }
}
\ No newline at end of file
Modified: trunk/smooks/plugins/org.jboss.tools.smooks.templating/src/org/jboss/tools/smooks/templating/template/xml/XMLFreeMarkerTemplateBuilder.java
===================================================================
--- trunk/smooks/plugins/org.jboss.tools.smooks.templating/src/org/jboss/tools/smooks/templating/template/xml/XMLFreeMarkerTemplateBuilder.java 2010-11-12 19:00:05 UTC (rev 26529)
+++ trunk/smooks/plugins/org.jboss.tools.smooks.templating/src/org/jboss/tools/smooks/templating/template/xml/XMLFreeMarkerTemplateBuilder.java 2010-11-12 20:05:03 UTC (rev 26530)
@@ -213,7 +213,7 @@
if(children.getLength() == 0) {
Mapping mapping = getMapping(element);
- if(ModelBuilder.getElementType(element) == ElementType.simple && mapping instanceof ValueMapping) {
+ if(ModelBuilder.getElementType(element) == ElementType.simple) {
templateWriter.write(">"); //$NON-NLS-1$
writeHistory.startClosed = true;
if(mapping != null) {
@@ -223,17 +223,13 @@
}
}
} else {
- if(!ModelBuilder.isInReservedNamespace(element)) {
+ if(!ModelBuilder.isInReservedNamespace(element) && !writeHistory.startClosed) {
templateWriter.write(">"); //$NON-NLS-1$
- writeHistory.startClosed = true;
}
+ writeHistory.startClosed = true;
for(int i = 0; i < children.getLength(); i++) {
Node child = children.item(i);
if(child.getNodeType() == Node.ELEMENT_NODE) {
- if(!writeHistory.startClosed) {
- templateWriter.write(">"); //$NON-NLS-1$
- writeHistory.startClosed = true;
- }
writeElement((Element)child, indent, true, templateWriter);
writeHistory.numElementsWritten++;
}
Modified: trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/gef/model/AbstractSmooksGraphicalModel.java
===================================================================
--- trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/gef/model/AbstractSmooksGraphicalModel.java 2010-11-12 19:00:05 UTC (rev 26529)
+++ trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/gef/model/AbstractSmooksGraphicalModel.java 2010-11-12 20:05:03 UTC (rev 26530)
@@ -96,16 +96,11 @@
}
public AbstractSmooksGraphicalModel getModelRootNode() {
-
- AbstractSmooksGraphicalModel modelRootParent = parent;
- while(true) {
- if(modelRootParent.getParent() == null || modelRootParent.getParent() instanceof RootModel) {
- break;
- }
- modelRootParent = modelRootParent.getParent();
+ if(parent != null && !(parent instanceof RootModel)) {
+ return parent.getModelRootNode();
}
- return modelRootParent;
+ return this;
}
//
Modified: trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/gef/tree/model/TreeNodeConnection.java
===================================================================
--- trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/gef/tree/model/TreeNodeConnection.java 2010-11-12 19:00:05 UTC (rev 26529)
+++ trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/gef/tree/model/TreeNodeConnection.java 2010-11-12 20:05:03 UTC (rev 26530)
@@ -15,6 +15,7 @@
import org.jboss.tools.smooks.gef.model.AbstractSmooksGraphicalModel;
import org.jboss.tools.smooks.graphical.editors.model.IValidatableModel;
import org.jboss.tools.smooks.templating.template.CollectionMapping;
+import org.jboss.tools.smooks.templating.template.result.RemoveResult;
import org.milyn.xml.DomUtils;
import org.w3c.dom.Attr;
import org.w3c.dom.Element;
@@ -89,6 +90,9 @@
public void disconnectTarget() {
targetNode.removeTargetConnection(this);
+ if(data instanceof RemoveResult) {
+ ((TreeNodeModel)targetNode.getModelRootNode()).removeMappingConnections(((RemoveResult)data).getRemoveMappings());
+ }
}
public AbstractSmooksGraphicalModel getSourceNode() {
Modified: trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/gef/tree/model/TreeNodeModel.java
===================================================================
--- trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/gef/tree/model/TreeNodeModel.java 2010-11-12 19:00:05 UTC (rev 26529)
+++ trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/gef/tree/model/TreeNodeModel.java 2010-11-12 20:05:03 UTC (rev 26530)
@@ -12,7 +12,9 @@
import org.jboss.tools.smooks.configuration.editors.xml.TagObject;
import org.jboss.tools.smooks.configuration.editors.xml.TagPropertyObject;
import org.jboss.tools.smooks.gef.model.AbstractSmooksGraphicalModel;
+import org.jboss.tools.smooks.graphical.editors.model.freemarker.FreemarkerTemplateNodeGraphicalModel;
import org.jboss.tools.smooks.templating.template.CollectionMapping;
+import org.jboss.tools.smooks.templating.template.Mapping;
public class TreeNodeModel extends AbstractSmooksGraphicalModel {
@@ -200,6 +202,35 @@
return parentNode.getParentCollectionConnection();
}
+ public void removeMappingConnections(List<Mapping> removeMappings) {
+ if(removeMappings == null || removeMappings.isEmpty()) {
+ return;
+ }
+
+ // Remove from all the children first...
+ for(AbstractSmooksGraphicalModel child : children) {
+ if(child instanceof TreeNodeModel) {
+ ((TreeNodeModel)child).removeMappingConnections(removeMappings);
+ }
+ }
+
+ // Now remove from this node...
+ if(targetConnections != null && !targetConnections.isEmpty()) {
+ List<TreeNodeConnection> connectionsToRemove = new ArrayList<TreeNodeConnection>();
+ for(TreeNodeConnection connection : targetConnections) {
+ Object connectionData = connection.getData();
+ if(connectionData instanceof Mapping) {
+ if(removeMappings.contains(connectionData)) {
+ connectionsToRemove.add(connection);
+ }
+ }
+ }
+ for(TreeNodeConnection connection : connectionsToRemove) {
+ connection.disconnect();
+ }
+ }
+ }
+
public void setText(String text) {
// if (text != null && !text.equals(this.text)) {
// String oldtext = this.text;
Modified: trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/graphical/editors/model/freemarker/FreemarkerTemplateNodeGraphicalModel.java
===================================================================
--- trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/graphical/editors/model/freemarker/FreemarkerTemplateNodeGraphicalModel.java 2010-11-12 19:00:05 UTC (rev 26529)
+++ trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/graphical/editors/model/freemarker/FreemarkerTemplateNodeGraphicalModel.java 2010-11-12 20:05:03 UTC (rev 26530)
@@ -38,6 +38,8 @@
import org.jboss.tools.smooks.templating.template.ValueMapping;
import org.jboss.tools.smooks.templating.template.TemplateBuilder;
import org.jboss.tools.smooks.templating.template.exception.InvalidMappingException;
+import org.jboss.tools.smooks.templating.template.result.AddCollectionResult;
+import org.jboss.tools.smooks.templating.template.result.RemoveResult;
import org.milyn.xml.DomUtils;
import org.w3c.dom.Element;
import org.w3c.dom.Node;
@@ -146,7 +148,7 @@
try {
if (isCollectionConnection(connection)) {
- CollectionMapping mapping = null;
+ AddCollectionResult mappingResult = null;
// if it's a directly mapping
if (mappingSourceNode instanceof InputDataTreeNodeModel) {
@@ -157,7 +159,7 @@
Object data = mappingSourceNode.getData();
String mappingString = connection.getTargetConnectionObjectRef();
String collectionItemName = normalizeFreemarkerVariable(DomUtils.getName((Element) sourceNode));
- mapping = builder.addCollectionMapping(mappingString, (Element) targetNode, collectionItemName);
+ mappingResult = builder.addCollectionMapping(mappingString, (Element) targetNode, collectionItemName);
} else {
AbstractSmooksGraphicalModel beanGraph = connection.getSourceNode();
@@ -175,12 +177,12 @@
}
}
BeanType javabeanModel = (BeanType) jobj;
- mapping = builder.addCollectionMapping(javabeanModel.getBeanId(), (Element) targetNode, collectionName);
+ mappingResult = builder.addCollectionMapping(javabeanModel.getBeanId(), (Element) targetNode, collectionName);
}
- connection.setData(mapping);
- }
- if (isMappingValueConnection(connection)) {
+ connection.setData(mappingResult.getMapping());
+ ((TreeNodeModel)getModelRootNode()).removeMappingConnections(mappingResult.getRemoveMappings());
+ } else if (isMappingValueConnection(connection)) {
String mappingString = null;
// if it's a directly mapping
@@ -348,14 +350,16 @@
((TreeNodeModel)connection.getSourceNode()).getConnections().remove(connection);
getConnections().remove(connection);
+ RemoveResult removeResult;
try {
TemplateBuilder builder = getTemplateBuilder();
Object mapping = connection.getData();
if (builder == null || mapping == null)
return;
if (mapping instanceof Mapping) {
- builder.removeMapping((Mapping) mapping);
+ removeResult = builder.removeMapping((Mapping) mapping);
changeFreemarkerContents();
+ connection.setData(removeResult);
}
super.removeTargetConnection(connection);
} catch (Exception e) {
Modified: trunk/smooks/tests/org.jboss.tools.smooks.templating.test/src/org/jboss/tools/smooks/templating/template/xml/XMLSampleXMLFreeMarkerTemplateBuilderTest.java
===================================================================
--- trunk/smooks/tests/org.jboss.tools.smooks.templating.test/src/org/jboss/tools/smooks/templating/template/xml/XMLSampleXMLFreeMarkerTemplateBuilderTest.java 2010-11-12 19:00:05 UTC (rev 26529)
+++ trunk/smooks/tests/org.jboss.tools.smooks.templating.test/src/org/jboss/tools/smooks/templating/template/xml/XMLSampleXMLFreeMarkerTemplateBuilderTest.java 2010-11-12 20:05:03 UTC (rev 26530)
@@ -28,9 +28,12 @@
import junit.framework.TestCase;
import org.jboss.tools.smooks.templating.model.ModelBuilderException;
+import org.jboss.tools.smooks.templating.template.CollectionMapping;
import org.jboss.tools.smooks.templating.template.TemplateBuilder;
import org.jboss.tools.smooks.templating.template.TestUtil;
+import org.jboss.tools.smooks.templating.template.ValueMapping;
import org.jboss.tools.smooks.templating.template.exception.TemplateBuilderException;
+import org.jboss.tools.smooks.templating.template.result.AddCollectionResult;
import org.w3c.dom.Element;
import org.w3c.dom.Node;
import org.xml.sax.SAXException;
@@ -76,4 +79,20 @@
XMLFreeMarkerTemplateBuilder builder2 = new XMLFreeMarkerTemplateBuilder(builder.getModelBuilder(), theTemplate);
assertEquals(theTemplate, builder2.buildTemplate());
}
+
+ public void testXMLOrder03() throws IOException, ParserConfigurationException, TemplateBuilderException, SAXException, ModelBuilderException, XPathExpressionException {
+ TemplateBuilder builder = TestUtil.createXMLSampleFreeMarkerTemplateBuilder(new File("src/org/jboss/tools/smooks/templating/template/xml/order-status-01.xml"));
+
+ Node identNode = builder.getModelNode("ns0:OrderStatusResult/ns0:OrderStatusResultHeader/ns0:BuyerParty/ns1:PartyID/ns1:Ident");
+ Element resultStatusCollectionNode = (Element) builder.getModelNode("ns0:OrderStatusResult/ns0:ListOfOrderStatusResultDetail/ns0:OrderStatusResultDetail");
+ Node buyerRefNumberNode = builder.getModelNode("ns0:OrderStatusResult/ns0:ListOfOrderStatusResultDetail/ns0:OrderStatusResultDetail/ns0:OrderStatusResultReference/ns0:BuyerReferenceNumber");
+
+ builder.addValueMapping("order.status.id", identNode);
+ ValueMapping refNumMapping = builder.addValueMapping("order.orderItemsStatusList.buyerRefNumber", buyerRefNumberNode);
+
+ // Adding the collection mapping after the refNumMapping should result in an instruction (in the collectionMapping)
+ // to remove the refNumMapping...
+ AddCollectionResult collectionMapping = builder.addCollectionMapping("order.orderItemsStatusList", resultStatusCollectionNode, "itemStatus");
+ assertTrue(collectionMapping.getRemoveMappings().contains(refNumMapping));
+ }
}
Modified: trunk/smooks/tests/org.jboss.tools.smooks.templating.test/src/org/jboss/tools/smooks/templating/template/xml/XSDXMLFreeMarkerTemplateBuilderTest.java
===================================================================
--- trunk/smooks/tests/org.jboss.tools.smooks.templating.test/src/org/jboss/tools/smooks/templating/template/xml/XSDXMLFreeMarkerTemplateBuilderTest.java 2010-11-12 19:00:05 UTC (rev 26529)
+++ trunk/smooks/tests/org.jboss.tools.smooks.templating.test/src/org/jboss/tools/smooks/templating/template/xml/XSDXMLFreeMarkerTemplateBuilderTest.java 2010-11-12 20:05:03 UTC (rev 26530)
@@ -59,6 +59,7 @@
"src/org/jboss/tools/smooks/templating/template/xml/simple-person.xsd"), "person");
String theTemplate = builder.buildTemplate();
+ System.out.println(theTemplate);
TestUtil.assertXMLEquals(theTemplate, "expected/simple-person-01.xml", getClass());
// Now, test that we can parse the template ....
@@ -182,7 +183,7 @@
// Remove the <dog> mapping... should reshow the <person> and <cat>
// nodes...
- List<Node> showNodes = builder.removeMapping(mapping);
+ List<Node> showNodes = builder.removeMapping(mapping).getShowNodes();
assertEquals(2, showNodes.size());
assertEquals(builder.getModelNode("ns0:creature/smk:compositor/person"), showNodes.get(0));
assertEquals(builder.getModelNode("ns0:creature/smk:compositor/cat"), showNodes.get(1));
@@ -208,7 +209,7 @@
// Remove the <cat> mapping... should reshow the <person> and <dog>
// nodes...
- showNodes = builder.removeMapping(mapping);
+ showNodes = builder.removeMapping(mapping).getShowNodes();
assertEquals(2, showNodes.size());
assertEquals(builder.getModelNode("ns0:creature/smk:compositor/dog"), showNodes.get(0));
assertEquals(builder.getModelNode("ns0:creature/smk:compositor/person"), showNodes.get(1));
15 years, 5 months
JBoss Tools SVN: r26529 - in trunk/jst/tests/org.jboss.tools.jst.jsp.test: projects/JsfJbide1791Test/WebContent/pages and 1 other directories.
by jbosstools-commits@lists.jboss.org
Author: yradtsevich
Date: 2010-11-12 14:00:05 -0500 (Fri, 12 Nov 2010)
New Revision: 26529
Added:
trunk/jst/tests/org.jboss.tools.jst.jsp.test/projects/JsfJbide1791Test/WebContent/pages/newSideBySideEditorTest.txt
Modified:
trunk/jst/tests/org.jboss.tools.jst.jsp.test/META-INF/MANIFEST.MF
trunk/jst/tests/org.jboss.tools.jst.jsp.test/src/org/jboss/tools/jst/jsp/test/ca/NewEditorSideBySideCommandTest.java
Log:
https://jira.jboss.org/browse/JBIDE-7489 : org.jboss.tools.jst.jsp.test.ca.ExternalizeCommandTest and .NewEditorSideBySideCommandTest failures
- created missing file for NewEditorSideBySideCommandTest
- added org.jboss.tools.neweditor.sidebyside dependency to org.jboss.tools.jst.jsp.test
- changed the method name: NewEditorSideBySideCommandTest.testExternalizeCommand->testNewEditorSideBySideCommand
Modified: trunk/jst/tests/org.jboss.tools.jst.jsp.test/META-INF/MANIFEST.MF
===================================================================
--- trunk/jst/tests/org.jboss.tools.jst.jsp.test/META-INF/MANIFEST.MF 2010-11-12 18:42:50 UTC (rev 26528)
+++ trunk/jst/tests/org.jboss.tools.jst.jsp.test/META-INF/MANIFEST.MF 2010-11-12 19:00:05 UTC (rev 26529)
@@ -17,7 +17,8 @@
org.jboss.tools.jst.web,
org.jboss.tools.common.text.xml,
org.jboss.tools.jst.web.kb,
- org.eclipse.jst.standard.schemas
+ org.eclipse.jst.standard.schemas,
+ org.jboss.tools.neweditor.sidebyside
Export-Package:
org.jboss.tools.jst.jsp.test,
org.jboss.tools.jst.jsp.test.ca
Added: trunk/jst/tests/org.jboss.tools.jst.jsp.test/projects/JsfJbide1791Test/WebContent/pages/newSideBySideEditorTest.txt
===================================================================
--- trunk/jst/tests/org.jboss.tools.jst.jsp.test/projects/JsfJbide1791Test/WebContent/pages/newSideBySideEditorTest.txt (rev 0)
+++ trunk/jst/tests/org.jboss.tools.jst.jsp.test/projects/JsfJbide1791Test/WebContent/pages/newSideBySideEditorTest.txt 2010-11-12 19:00:05 UTC (rev 26529)
@@ -0,0 +1 @@
+test content
Modified: trunk/jst/tests/org.jboss.tools.jst.jsp.test/src/org/jboss/tools/jst/jsp/test/ca/NewEditorSideBySideCommandTest.java
===================================================================
--- trunk/jst/tests/org.jboss.tools.jst.jsp.test/src/org/jboss/tools/jst/jsp/test/ca/NewEditorSideBySideCommandTest.java 2010-11-12 18:42:50 UTC (rev 26528)
+++ trunk/jst/tests/org.jboss.tools.jst.jsp.test/src/org/jboss/tools/jst/jsp/test/ca/NewEditorSideBySideCommandTest.java 2010-11-12 19:00:05 UTC (rev 26529)
@@ -56,7 +56,7 @@
* @throws NotEnabledException
* @throws ExecutionException
*/
- public void testExternalizeCommand() throws NotDefinedException, ExecutionException, NotEnabledException, NotHandledException{
+ public void testNewEditorSideBySideCommand() throws Exception {
assertEquals(newEditorSideBySideCmd.getName()+ " should be disabled without opened editor",false,newEditorSideBySideCmd.isEnabled()); //$NON-NLS-1$
WorkbenchUtils.openEditor(project.getName()+"/WebContent/pages/newSideBySideEditorTest.txt"); //$NON-NLS-1$
assertEquals(newEditorSideBySideCmd.getName()+ " should be enabled when editor opened",true,newEditorSideBySideCmd.isEnabled()); //$NON-NLS-1$
15 years, 5 months
JBoss Tools SVN: r26528 - trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui.
by jbosstools-commits@lists.jboss.org
Author: adietish
Date: 2010-11-12 13:42:50 -0500 (Fri, 12 Nov 2010)
New Revision: 26528
Modified:
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/ChangeLog
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/plugin.xml
Log:
[JBIDE-7572] added <enabledWhen> to all handlers but the "new connection" handler
Modified: trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/ChangeLog
===================================================================
--- trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/ChangeLog 2010-11-12 18:20:24 UTC (rev 26527)
+++ trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/ChangeLog 2010-11-12 18:42:50 UTC (rev 26528)
@@ -1,8 +1,9 @@
2010-11-12 André Dietisheim <adietish(a)redhat.com>
+ * plugin.xml:
+ [JBIDE-7572] added <enabledWhen> to all handlers but the "new connection" handler
* src/org/jboss/tools/deltacloud/ui/commands/CreateInstanceHandler.java:
[JBIDE-7558] corrected to use DeltaCloudImage (used CVImageElement before) so that it may be used in DeltaCloudView and ImageView
- * plugin.xml:
* src/org/jboss/tools/deltacloud/ui/views/ImageView.java:
* src/org/jboss/tools/deltacloud/ui/commands/RefreshImagesHandler.java:
[JBIDE-7558] added refresh images handler, added context menu to ImageView, removed old action code
Modified: trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/plugin.xml
===================================================================
--- trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/plugin.xml 2010-11-12 18:20:24 UTC (rev 26527)
+++ trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/plugin.xml 2010-11-12 18:42:50 UTC (rev 26528)
@@ -121,11 +121,17 @@
</iterate>
</with>
</activeWhen>
+ <enabledWhen>
+ <with
+ variable="selection">
+ <count value="+" />
+ </with>
+ </enabledWhen>
</handler>
<handler
class="org.jboss.tools.deltacloud.ui.commands.DisconnectCloudHandler"
commandId="org.eclipse.ui.edit.delete">
- <activeWhen>
+ <activeWhen>
<with
variable="selection">
<iterate>
@@ -134,7 +140,13 @@
</instanceof>
</iterate>
</with>
- </activeWhen>
+ </activeWhen>
+ <enabledWhen>
+ <with
+ variable="selection">
+ <count value="+" />
+ </with>
+ </enabledWhen>
</handler>
<handler
class="org.jboss.tools.deltacloud.ui.commands.RefreshCloudHandler"
@@ -185,7 +197,7 @@
<handler
class="org.jboss.tools.deltacloud.ui.commands.StartInstanceHandler"
commandId="org.jboss.tools.deltacloud.ui.startinstance">
- <enabledWhen>
+ <activeWhen>
<with
variable="selection">
<iterate operator="and">
@@ -198,12 +210,18 @@
</and>
</iterate>
</with>
+ </activeWhen>
+ <enabledWhen>
+ <with
+ variable="selection">
+ <count value="+" />
+ </with>
</enabledWhen>
</handler>
<handler
class="org.jboss.tools.deltacloud.ui.commands.StopInstanceHandler"
commandId="org.jboss.tools.deltacloud.ui.stopinstance">
- <activeWhen>
+ <activeWhen>
<with
variable="selection">
<iterate operator="and">
@@ -216,12 +234,18 @@
</and>
</iterate>
</with>
- </activeWhen>
+ </activeWhen>
+ <enabledWhen>
+ <with
+ variable="selection">
+ <count value="+" />
+ </with>
+ </enabledWhen>
</handler>
<handler
class="org.jboss.tools.deltacloud.ui.commands.RebootInstanceHandler"
commandId="org.jboss.tools.deltacloud.ui.rebootinstance">
- <activeWhen>
+ <activeWhen>
<with
variable="selection">
<iterate operator="and">
@@ -234,12 +258,18 @@
</and>
</iterate>
</with>
- </activeWhen>
+ </activeWhen>
+ <enabledWhen>
+ <with
+ variable="selection">
+ <count value="+" />
+ </with>
+ </enabledWhen>
</handler>
<handler
class="org.jboss.tools.deltacloud.ui.commands.DestroyInstanceHandler"
commandId="org.jboss.tools.deltacloud.ui.destroyinstance">
- <activeWhen>
+ <activeWhen>
<with
variable="selection">
<iterate operator="and">
@@ -252,21 +282,33 @@
</and>
</iterate>
</with>
- </activeWhen>
+ </activeWhen>
+ <enabledWhen>
+ <with
+ variable="selection">
+ <count value="+" />
+ </with>
+ </enabledWhen>
</handler>
<handler
class="org.jboss.tools.deltacloud.ui.commands.CreateInstanceHandler2"
commandId="org.jboss.tools.deltacloud.ui.createinstance2">
- <activeWhen>
- <with
- variable="selection">
- <iterate>
- <instanceof
- value="org.jboss.tools.deltacloud.ui.views.CloudViewElement">
- </instanceof>
- </iterate>
- </with>
- </activeWhen>
+ <activeWhen>
+ <with
+ variable="selection">
+ <iterate>
+ <instanceof
+ value="org.jboss.tools.deltacloud.ui.views.CloudViewElement">
+ </instanceof>
+ </iterate>
+ </with>
+ </activeWhen>
+ <enabledWhen>
+ <with
+ variable="selection">
+ <count value="+" />
+ </with>
+ </enabledWhen>
</handler>
</extension>
<extension
@@ -284,6 +326,12 @@
</iterate>
</with>
</activeWhen>
+ <enabledWhen>
+ <with
+ variable="selection">
+ <count value="+" />
+ </with>
+ </enabledWhen>
</handler>
</extension>
<extension
@@ -292,7 +340,7 @@
<handler
class="org.jboss.tools.deltacloud.ui.commands.FilterImagesHandler"
commandId="org.jboss.tools.deltacloud.ui.filterimages">
- <activeWhen>
+ <activeWhen>
<with
variable="selection">
<iterate operator="and">
@@ -301,12 +349,18 @@
</adapt>
</iterate>
</with>
- </activeWhen>
+ </activeWhen>
+ <enabledWhen>
+ <with
+ variable="selection">
+ <count value="+" />
+ </with>
+ </enabledWhen>
</handler>
<handler
class="org.jboss.tools.deltacloud.ui.commands.FilterInstancesHandler"
commandId="org.jboss.tools.deltacloud.ui.filterinstances">
- <activeWhen>
+ <activeWhen>
<with
variable="selection">
<iterate operator="and">
@@ -315,7 +369,13 @@
</adapt>
</iterate>
</with>
- </activeWhen>
+ </activeWhen>
+ <enabledWhen>
+ <with
+ variable="selection">
+ <count value="+" />
+ </with>
+ </enabledWhen>
</handler>
</extension>
<!-- Show in remote system explorer handler -->
@@ -324,7 +384,7 @@
<handler
class="org.jboss.tools.deltacloud.ui.commands.ShowInRemoteSystemExplorerHandler"
commandId="org.jboss.tools.deltacloud.ui.showremotesysexplorer">
- <activeWhen>
+ <activeWhen>
<with
variable="selection">
<iterate>
@@ -333,7 +393,13 @@
</instanceof>
</iterate>
</with>
- </activeWhen>
+ </activeWhen>
+ <enabledWhen>
+ <with
+ variable="selection">
+ <count value="+" />
+ </with>
+ </enabledWhen>
</handler>
</extension>
<!-- InstanceView context menu ================================== -->
@@ -465,12 +531,7 @@
tooltip="%command.showInRemoteSysExplorer.tooltip">
</command>
</menuContribution>
- </extension>
<!-- DeltaCloudView toolbar ================================== -->
- <extension
- id="org.jboss.tools.deltacloud.ui.views.DeltaCloudView"
- name="DeltaCloudView commands"
- point="org.eclipse.ui.menus">
<menuContribution
allPopups="true"
locationURI="toolbar:org.jboss.tools.deltacloud.ui.views.DeltaCloudView">
@@ -489,7 +550,7 @@
style="push"
tooltip="%command.newconnection.tooltip">
</command>
- </menuContribution>
+ </menuContribution>
<!-- DeltaCloudView context menu ================================== -->
<menuContribution
allPopups="true"
15 years, 5 months