JBoss Tools SVN: r17099 - trunk/hibernatetools/tests/org.hibernate.eclipse.console.test/src/org/hibernate/eclipse/console/test/mappingproject.
by jbosstools-commits@lists.jboss.org
Author: dgolovin
Date: 2009-08-15 04:42:11 -0400 (Sat, 15 Aug 2009)
New Revision: 17099
Modified:
trunk/hibernatetools/tests/org.hibernate.eclipse.console.test/src/org/hibernate/eclipse/console/test/mappingproject/MappingTestsBase.java
trunk/hibernatetools/tests/org.hibernate.eclipse.console.test/src/org/hibernate/eclipse/console/test/mappingproject/OpenMappingDiagramTest.java
trunk/hibernatetools/tests/org.hibernate.eclipse.console.test/src/org/hibernate/eclipse/console/test/mappingproject/OpenMappingFileTest.java
trunk/hibernatetools/tests/org.hibernate.eclipse.console.test/src/org/hibernate/eclipse/console/test/mappingproject/OpenSourceFileTest.java
Log:
Memory Consumption problem was fixed for hibernate console tests https://jira.jboss.org/jira/browse/JBIDE-4740
Modified: trunk/hibernatetools/tests/org.hibernate.eclipse.console.test/src/org/hibernate/eclipse/console/test/mappingproject/MappingTestsBase.java
===================================================================
--- trunk/hibernatetools/tests/org.hibernate.eclipse.console.test/src/org/hibernate/eclipse/console/test/mappingproject/MappingTestsBase.java 2009-08-15 00:01:20 UTC (rev 17098)
+++ trunk/hibernatetools/tests/org.hibernate.eclipse.console.test/src/org/hibernate/eclipse/console/test/mappingproject/MappingTestsBase.java 2009-08-15 08:42:11 UTC (rev 17099)
@@ -11,6 +11,8 @@
package org.hibernate.eclipse.console.test.mappingproject;
import java.io.IOException;
+import java.lang.reflect.InvocationTargetException;
+import java.lang.reflect.Method;
import java.util.regex.Pattern;
import org.eclipse.core.runtime.CoreException;
@@ -22,6 +24,7 @@
import org.eclipse.jdt.ui.JavaUI;
import org.eclipse.jface.util.SafeRunnable;
import org.eclipse.osgi.util.NLS;
+import org.eclipse.swt.widgets.Display;
import org.eclipse.ui.PartInitException;
import org.eclipse.ui.PlatformUI;
import org.hibernate.eclipse.console.HibernateConsolePerspectiveFactory;
@@ -143,6 +146,14 @@
int prev_failCount = result.failureCount();
int prev_errCount = result.errorCount();
+ Method m = null;
+ try {
+ m = Display.getCurrent().getClass().getDeclaredMethod("runAsyncMessages", boolean.class);
+ m.setAccessible(true);
+ } catch (SecurityException e) {
+ } catch (NoSuchMethodException e) {
+ }
+
TestSuite suite = TestSet.createTestSuite(consoleConfigName, testPackage, testProject);
customizeCfgXml(testPackage);
@@ -152,8 +163,24 @@
for (int k = 0; k < suite.testCount(); k++) {
Test test = suite.testAt(k);
test.run(result);
+// ----------------------------------------------
+// https://jira.jboss.org/jira/browse/JBIDE-4740
+// first way to fix OutOfMemory problems
+ closeAllEditors();
+ int LIMIT = 50,
+ ii = 0;
+ while(ii<LIMIT && Display.getCurrent().readAndDispatch()) {
+ //Display.getCurrent().sleep();
+ ii++;
+ }
}
- closeAllEditors();
+ // Second way
+ try {
+ m.invoke(Display.getCurrent(), Boolean.TRUE);
+ } catch (IllegalArgumentException e) {
+ } catch (IllegalAccessException e) {
+ } catch (InvocationTargetException e) {
+ }
//==============================
executions++;
if (Customization.USE_CONSOLE_OUTPUT) {
Modified: trunk/hibernatetools/tests/org.hibernate.eclipse.console.test/src/org/hibernate/eclipse/console/test/mappingproject/OpenMappingDiagramTest.java
===================================================================
--- trunk/hibernatetools/tests/org.hibernate.eclipse.console.test/src/org/hibernate/eclipse/console/test/mappingproject/OpenMappingDiagramTest.java 2009-08-15 00:01:20 UTC (rev 17098)
+++ trunk/hibernatetools/tests/org.hibernate.eclipse.console.test/src/org/hibernate/eclipse/console/test/mappingproject/OpenMappingDiagramTest.java 2009-08-15 08:42:11 UTC (rev 17099)
@@ -16,6 +16,7 @@
import org.eclipse.osgi.util.NLS;
import org.eclipse.ui.IEditorPart;
import org.eclipse.ui.PartInitException;
+import org.eclipse.ui.PlatformUI;
import org.hibernate.InvalidMappingException;
import org.hibernate.cfg.Configuration;
import org.hibernate.console.ConsoleConfiguration;
@@ -49,7 +50,8 @@
protected void tearDown() throws Exception {
consoleConfigName = null;
- testPackage = null;
+ testPackage = null;
+ PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().closeAllEditors(false);
}
public void testOpenMappingDiagram() {
Modified: trunk/hibernatetools/tests/org.hibernate.eclipse.console.test/src/org/hibernate/eclipse/console/test/mappingproject/OpenMappingFileTest.java
===================================================================
--- trunk/hibernatetools/tests/org.hibernate.eclipse.console.test/src/org/hibernate/eclipse/console/test/mappingproject/OpenMappingFileTest.java 2009-08-15 00:01:20 UTC (rev 17098)
+++ trunk/hibernatetools/tests/org.hibernate.eclipse.console.test/src/org/hibernate/eclipse/console/test/mappingproject/OpenMappingFileTest.java 2009-08-15 08:42:11 UTC (rev 17099)
@@ -19,6 +19,7 @@
import org.eclipse.osgi.util.NLS;
import org.eclipse.ui.IEditorPart;
import org.eclipse.ui.PartInitException;
+import org.eclipse.ui.PlatformUI;
import org.hibernate.InvalidMappingException;
import org.hibernate.cfg.Configuration;
import org.hibernate.console.ConsoleConfiguration;
@@ -55,7 +56,8 @@
protected void tearDown() throws Exception {
consoleConfigName = null;
- testPackage = null;
+ testPackage = null;
+ PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().closeAllEditors(false);
}
public void testOpenMappingFileTest() {
Modified: trunk/hibernatetools/tests/org.hibernate.eclipse.console.test/src/org/hibernate/eclipse/console/test/mappingproject/OpenSourceFileTest.java
===================================================================
--- trunk/hibernatetools/tests/org.hibernate.eclipse.console.test/src/org/hibernate/eclipse/console/test/mappingproject/OpenSourceFileTest.java 2009-08-15 00:01:20 UTC (rev 17098)
+++ trunk/hibernatetools/tests/org.hibernate.eclipse.console.test/src/org/hibernate/eclipse/console/test/mappingproject/OpenSourceFileTest.java 2009-08-15 08:42:11 UTC (rev 17099)
@@ -19,6 +19,7 @@
import org.eclipse.osgi.util.NLS;
import org.eclipse.ui.IEditorPart;
import org.eclipse.ui.PartInitException;
+import org.eclipse.ui.PlatformUI;
import org.hibernate.InvalidMappingException;
import org.hibernate.cfg.Configuration;
import org.hibernate.console.ConsoleConfiguration;
@@ -56,7 +57,8 @@
protected void tearDown() throws Exception {
consoleConfigName = null;
- testPackage = null;
+ testPackage = null;
+ PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().closeAllEditors(false);
}
public void testOpenSourceFileTest() {
16 years, 4 months
JBoss Tools SVN: r17098 - trunk/hibernatetools/tests/org.hibernate.eclipse.console.test/src/org/hibernate/eclipse/console/test/mappingproject.
by jbosstools-commits@lists.jboss.org
Author: dgolovin
Date: 2009-08-14 20:01:20 -0400 (Fri, 14 Aug 2009)
New Revision: 17098
Modified:
trunk/hibernatetools/tests/org.hibernate.eclipse.console.test/src/org/hibernate/eclipse/console/test/mappingproject/MappingTestsBase.java
Log:
Project name was made unique to avoid 'file already exists' like errors in JUnit Tests.
Modified: trunk/hibernatetools/tests/org.hibernate.eclipse.console.test/src/org/hibernate/eclipse/console/test/mappingproject/MappingTestsBase.java
===================================================================
--- trunk/hibernatetools/tests/org.hibernate.eclipse.console.test/src/org/hibernate/eclipse/console/test/mappingproject/MappingTestsBase.java 2009-08-14 23:58:20 UTC (rev 17097)
+++ trunk/hibernatetools/tests/org.hibernate.eclipse.console.test/src/org/hibernate/eclipse/console/test/mappingproject/MappingTestsBase.java 2009-08-15 00:01:20 UTC (rev 17098)
@@ -20,6 +20,7 @@
import org.eclipse.jdt.internal.core.PackageFragmentRoot;
import org.eclipse.jdt.ui.IPackagesViewPart;
import org.eclipse.jdt.ui.JavaUI;
+import org.eclipse.jface.util.SafeRunnable;
import org.eclipse.osgi.util.NLS;
import org.eclipse.ui.PartInitException;
import org.eclipse.ui.PlatformUI;
@@ -57,7 +58,10 @@
protected void setUp() throws Exception {
super.setUp();
- testProject = new ConfigurableTestProject("JUnitTestProj"); //$NON-NLS-1$
+
+ testProject = new ConfigurableTestProject("JUnitTestProj"+System.currentTimeMillis()); //$NON-NLS-1$
+
+
consoleConfigName = testProject.getIProject().getName();
testPackage = null;
16 years, 4 months
JBoss Tools SVN: r17097 - in trunk: common/plugins/org.jboss.tools.common.text.ext/META-INF and 1 other directories.
by jbosstools-commits@lists.jboss.org
Author: dgolovin
Date: 2009-08-14 19:58:20 -0400 (Fri, 14 Aug 2009)
New Revision: 17097
Modified:
trunk/common/plugins/org.jboss.tools.common.kb/META-INF/MANIFEST.MF
trunk/common/plugins/org.jboss.tools.common.text.ext/META-INF/MANIFEST.MF
trunk/seam/plugins/org.jboss.tools.seam.ui/META-INF/MANIFEST.MF
Log:
surplus dependencies were removed from plug-ins:
common.kb
common.text.ext
seam.ui
Modified: trunk/common/plugins/org.jboss.tools.common.kb/META-INF/MANIFEST.MF
===================================================================
--- trunk/common/plugins/org.jboss.tools.common.kb/META-INF/MANIFEST.MF 2009-08-14 23:49:32 UTC (rev 17096)
+++ trunk/common/plugins/org.jboss.tools.common.kb/META-INF/MANIFEST.MF 2009-08-14 23:58:20 UTC (rev 17097)
@@ -12,15 +12,9 @@
org.jboss.tools.common.kb.configuration,
org.jboss.tools.common.kb.wtp
Require-Bundle: org.jboss.tools.common,
- org.junit,
- org.eclipse.swt,
org.eclipse.ui.workbench,
org.eclipse.jface,
- org.eclipse.core.resources,
- org.eclipse.core.runtime,
- org.eclipse.wst.xml.core,
- org.eclipse.jst.jsp.core,
- org.eclipse.jface.text
+ org.eclipse.core.runtime
Bundle-Version: 2.0.0
Bundle-ManifestVersion: 2
Bundle-RequiredExecutionEnvironment: J2SE-1.5
Modified: trunk/common/plugins/org.jboss.tools.common.text.ext/META-INF/MANIFEST.MF
===================================================================
--- trunk/common/plugins/org.jboss.tools.common.text.ext/META-INF/MANIFEST.MF 2009-08-14 23:49:32 UTC (rev 17096)
+++ trunk/common/plugins/org.jboss.tools.common.text.ext/META-INF/MANIFEST.MF 2009-08-14 23:58:20 UTC (rev 17097)
@@ -15,29 +15,17 @@
Plugin-Class: org.jboss.tools.common.text.ext.ExtensionsPlugin
Bundle-SymbolicName: org.jboss.tools.common.text.ext;singleton:=true
Bundle-Localization: plugin
-Require-Bundle: org.jboss.tools.common,
- org.jboss.tools.common.model,
+Require-Bundle: org.jboss.tools.common.model,
org.eclipse.ui.ide,
- org.eclipse.ui.views,
- org.eclipse.ui.editors,
- org.eclipse.core.runtime,
- org.eclipse.swt,
org.eclipse.ui,
- org.eclipse.text,
- org.eclipse.jface,
org.eclipse.jface.text,
- org.eclipse.ui.workbench,
org.eclipse.ui.workbench.texteditor,
- org.eclipse.jdt.core,
org.eclipse.jdt.ui,
- org.eclipse.core.resources,
org.eclipse.wst.sse.core;visibility:=reexport,
org.eclipse.wst.sse.ui;visibility:=reexport,
- org.eclipse.wst.xml.core;visibility:=reexport,
org.eclipse.jst.jsp.core;visibility:=reexport,
- org.eclipse.jst.j2ee.web;visibility:=reexport,
org.eclipse.wst.common.modulecore;visibility:=reexport,
- org.eclipse.emf.ecore,
org.eclipse.pde.ui,
- org.jboss.tools.common.el.core;bundle-version="2.0.0"
+ org.jboss.tools.common.el.core;bundle-version="2.0.0",
+ org.eclipse.emf.ecore;bundle-version="2.5.0"
Bundle-RequiredExecutionEnvironment: J2SE-1.5
Modified: trunk/seam/plugins/org.jboss.tools.seam.ui/META-INF/MANIFEST.MF
===================================================================
--- trunk/seam/plugins/org.jboss.tools.seam.ui/META-INF/MANIFEST.MF 2009-08-14 23:49:32 UTC (rev 17096)
+++ trunk/seam/plugins/org.jboss.tools.seam.ui/META-INF/MANIFEST.MF 2009-08-14 23:58:20 UTC (rev 17097)
@@ -38,7 +38,8 @@
org.eclipse.ltk.ui.refactoring,
org.jboss.ide.eclipse.as.core,
org.jboss.tools.jsf,
- org.jboss.tools.jst.web.ui;bundle-version="2.0.0"
+ org.jboss.tools.jst.web.ui;bundle-version="2.0.0",
+ org.eclipse.jst.j2ee.web;bundle-version="1.1.300"
Eclipse-LazyStart: true
Export-Package: org.jboss.tools.seam.ui,
org.jboss.tools.seam.ui.actions,
16 years, 4 months
JBoss Tools SVN: r17095 - in trunk/common/plugins/org.jboss.tools.common.text.xml: resources/icons and 2 other directories.
by jbosstools-commits@lists.jboss.org
Author: dgolovin
Date: 2009-08-14 19:48:17 -0400 (Fri, 14 Aug 2009)
New Revision: 17095
Added:
trunk/common/plugins/org.jboss.tools.common.text.xml/resources/org/jboss/tools/common/text/xml/xpl/
Removed:
trunk/common/plugins/org.jboss.tools.common.text.xml/resources/icons/xpl/
Modified:
trunk/common/plugins/org.jboss.tools.common.text.xml/META-INF/MANIFEST.MF
trunk/common/plugins/org.jboss.tools.common.text.xml/src/org/jboss/tools/common/text/xml/xpl/ToggleOccurencesMarkUpAction.java
Log:
fix for exceptions in Hibernate-console tests when they are running in development environment related to opening XML editor.
fix for occurrences icons loading to work right in dev and runtime workspace
Modified: trunk/common/plugins/org.jboss.tools.common.text.xml/META-INF/MANIFEST.MF
===================================================================
--- trunk/common/plugins/org.jboss.tools.common.text.xml/META-INF/MANIFEST.MF 2009-08-14 21:31:23 UTC (rev 17094)
+++ trunk/common/plugins/org.jboss.tools.common.text.xml/META-INF/MANIFEST.MF 2009-08-14 23:48:17 UTC (rev 17095)
@@ -21,21 +21,14 @@
org.jboss.tools.jst.jsp.text,
org.jboss.tools.jst.jsp.text.xpl
Require-Bundle: org.jboss.tools.common,
- org.eclipse.ui.ide,
- org.eclipse.ui.editors,
org.eclipse.core.runtime,
- org.eclipse.swt,
org.eclipse.ui,
- org.eclipse.text,
- org.eclipse.jface,
org.eclipse.jface.text,
- org.eclipse.ui.workbench,
org.eclipse.ui.workbench.texteditor,
org.eclipse.jdt.ui,
org.eclipse.jdt.core,
org.eclipse.wst.xml.ui,
org.eclipse.wst.sse.ui,
- org.eclipse.wst.xml.core,
org.eclipse.wst.sse.core,
org.eclipse.core.resources
Bundle-Version: 2.0.0
Copied: trunk/common/plugins/org.jboss.tools.common.text.xml/resources/org/jboss/tools/common/text/xml/xpl (from rev 17063, trunk/common/plugins/org.jboss.tools.common.text.xml/resources/icons/xpl)
Modified: trunk/common/plugins/org.jboss.tools.common.text.xml/src/org/jboss/tools/common/text/xml/xpl/ToggleOccurencesMarkUpAction.java
===================================================================
--- trunk/common/plugins/org.jboss.tools.common.text.xml/src/org/jboss/tools/common/text/xml/xpl/ToggleOccurencesMarkUpAction.java 2009-08-14 21:31:23 UTC (rev 17094)
+++ trunk/common/plugins/org.jboss.tools.common.text.xml/src/org/jboss/tools/common/text/xml/xpl/ToggleOccurencesMarkUpAction.java 2009-08-14 23:48:17 UTC (rev 17095)
@@ -100,22 +100,15 @@
setDescription(getString(bundle, descriptionKey, null));
String relPath= getString(bundle, imageKey, null);
-
- try {
- ImageDescriptor id = ImageDescriptor.createFromURL(makeIconFileURL("icons/xpl", relPath)); //$NON-NLS-1$
- if (id != null)
- setImageDescriptor(id);
- } catch (MalformedURLException e) {
- //ignore
+ ImageDescriptor id = ImageDescriptor.createFromFile(ToggleOccurencesMarkUpAction.class, relPath); //$NON-NLS-1$
+ if (id != null) {
+ setImageDescriptor(id);
}
- relPath= getString(bundle, disabledImageKey, null);
- try {
- ImageDescriptor id= ImageDescriptor.createFromURL(makeIconFileURL("icons/xpl", relPath)); //$NON-NLS-1$
- if (id != null)
- setDisabledImageDescriptor(id);
- } catch (MalformedURLException e) {
- //ignore
+ relPath = getString(bundle, disabledImageKey, null);
+ id= ImageDescriptor.createFromFile(ToggleOccurencesMarkUpAction.class, relPath); //$NON-NLS-1$
+ if (id != null) {
+ setDisabledImageDescriptor(id);
}
}
16 years, 4 months
JBoss Tools SVN: r17094 - in trunk: maven/plugins/org.jboss.tools.maven.core/src/org/jboss/tools/maven/core/internal/project/facet and 8 other directories.
by jbosstools-commits@lists.jboss.org
Author: snjeza
Date: 2009-08-14 17:31:23 -0400 (Fri, 14 Aug 2009)
New Revision: 17094
Added:
trunk/maven/plugins/org.jboss.tools.maven.seam/src/org/jboss/tools/maven/seam/configurators/
trunk/maven/plugins/org.jboss.tools.maven.seam/src/org/jboss/tools/maven/seam/configurators/SeamProjectConfigurator.java
trunk/maven/plugins/org.jboss.tools.maven.seam/src/org/jboss/tools/maven/seam/preferences/
trunk/maven/plugins/org.jboss.tools.maven.seam/src/org/jboss/tools/maven/seam/preferences/SeamConfiguratorPreferencePage.java
trunk/maven/plugins/org.jboss.tools.maven.seam/src/org/jboss/tools/maven/seam/preferences/SeamConfiguratorPreferencesInitializer.java
Modified:
trunk/maven/plugins/org.jboss.tools.maven.core/src/org/jboss/tools/maven/core/IJBossMavenConstants.java
trunk/maven/plugins/org.jboss.tools.maven.core/src/org/jboss/tools/maven/core/MavenCoreActivator.java
trunk/maven/plugins/org.jboss.tools.maven.core/src/org/jboss/tools/maven/core/internal/project/facet/MavenFacetInstallDataModelProvider.java
trunk/maven/plugins/org.jboss.tools.maven.seam/META-INF/MANIFEST.MF
trunk/maven/plugins/org.jboss.tools.maven.seam/plugin.xml
trunk/maven/plugins/org.jboss.tools.maven.seam/src/org/jboss/tools/maven/seam/MavenSeamActivator.java
trunk/maven/plugins/org.jboss.tools.maven.seam/src/org/jboss/tools/maven/seam/internal/project/facet/MavenPostInstallListener.java
trunk/maven/plugins/org.jboss.tools.maven.ui/src/org/jboss/tools/maven/ui/internal/project/facet/MavenFacetInstallPage.java
trunk/seam/plugins/org.jboss.tools.seam.core/src/org/jboss/tools/seam/internal/core/project/facet/ISeamFacetDataModelProperties.java
trunk/seam/plugins/org.jboss.tools.seam.core/src/org/jboss/tools/seam/internal/core/project/facet/SeamFacetAbstractInstallDelegate.java
trunk/seam/plugins/org.jboss.tools.seam.core/src/org/jboss/tools/seam/internal/core/project/facet/SeamFacetInstallDataModelProvider.java
Log:
https://jira.jboss.org/jira/browse/JBIDE-4736 Add m2eclipse project-configurator for Seam projects
Modified: trunk/maven/plugins/org.jboss.tools.maven.core/src/org/jboss/tools/maven/core/IJBossMavenConstants.java
===================================================================
--- trunk/maven/plugins/org.jboss.tools.maven.core/src/org/jboss/tools/maven/core/IJBossMavenConstants.java 2009-08-14 20:01:18 UTC (rev 17093)
+++ trunk/maven/plugins/org.jboss.tools.maven.core/src/org/jboss/tools/maven/core/IJBossMavenConstants.java 2009-08-14 21:31:23 UTC (rev 17094)
@@ -31,4 +31,5 @@
static final String SEAM_MAVEN_VERSION = "seamMavenVersion"; //$NON-NLS-1$
static final String SEAM_VERSION = "seam.version"; //$NON-NLS-1$
static final String REMOVE_WTP_CLASSPATH_CONTAINERS = "removeWTPClasspathContainers"; //$NON-NLS-1$
+ static final String MAVEN_PROJECT_EXISTS = "mavenProjectExists"; //$NON-NLS-1$
}
\ No newline at end of file
Modified: trunk/maven/plugins/org.jboss.tools.maven.core/src/org/jboss/tools/maven/core/MavenCoreActivator.java
===================================================================
--- trunk/maven/plugins/org.jboss.tools.maven.core/src/org/jboss/tools/maven/core/MavenCoreActivator.java 2009-08-14 20:01:18 UTC (rev 17093)
+++ trunk/maven/plugins/org.jboss.tools.maven.core/src/org/jboss/tools/maven/core/MavenCoreActivator.java 2009-08-14 21:31:23 UTC (rev 17094)
@@ -473,6 +473,9 @@
}
public static void mergeModel(org.maven.ide.components.pom.Model projectModel, org.maven.ide.components.pom.Model libraryModel) {
+ if (projectModel == null || libraryModel == null) {
+ return;
+ }
addProperties(projectModel,libraryModel);
addRepositories(projectModel,libraryModel);
addPlugins(projectModel,libraryModel);
Modified: trunk/maven/plugins/org.jboss.tools.maven.core/src/org/jboss/tools/maven/core/internal/project/facet/MavenFacetInstallDataModelProvider.java
===================================================================
--- trunk/maven/plugins/org.jboss.tools.maven.core/src/org/jboss/tools/maven/core/internal/project/facet/MavenFacetInstallDataModelProvider.java 2009-08-14 20:01:18 UTC (rev 17093)
+++ trunk/maven/plugins/org.jboss.tools.maven.core/src/org/jboss/tools/maven/core/internal/project/facet/MavenFacetInstallDataModelProvider.java 2009-08-14 21:31:23 UTC (rev 17094)
@@ -51,6 +51,9 @@
if (propertyName.equals(IJBossMavenConstants.REMOVE_WTP_CLASSPATH_CONTAINERS)) {
return Boolean.TRUE;
}
+ if (propertyName.equals(IJBossMavenConstants.MAVEN_PROJECT_EXISTS)) {
+ return Boolean.FALSE;
+ }
return super.getDefaultProperty(propertyName);
}
@@ -65,6 +68,7 @@
propertyNames.add(IJBossMavenConstants.PACKAGING);
propertyNames.add(IJBossMavenConstants.SEAM_MAVEN_VERSION);
propertyNames.add(IJBossMavenConstants.REMOVE_WTP_CLASSPATH_CONTAINERS);
+ propertyNames.add(IJBossMavenConstants.MAVEN_PROJECT_EXISTS);
return propertyNames;
}
Modified: trunk/maven/plugins/org.jboss.tools.maven.seam/META-INF/MANIFEST.MF
===================================================================
--- trunk/maven/plugins/org.jboss.tools.maven.seam/META-INF/MANIFEST.MF 2009-08-14 20:01:18 UTC (rev 17093)
+++ trunk/maven/plugins/org.jboss.tools.maven.seam/META-INF/MANIFEST.MF 2009-08-14 21:31:23 UTC (rev 17094)
@@ -8,8 +8,12 @@
org.eclipse.core.runtime,
org.jboss.tools.maven.core,
org.jboss.tools.seam.core,
+ org.jboss.tools.seam.ui,
+ org.jboss.tools.common.model,
org.maven.ide.components.maven_model_edit,
- org.eclipse.jst.j2ee.core
+ org.eclipse.jst.j2ee.core,
+ org.eclipse.jst.j2ee,
+ org.eclipse.wst.common.emfworkbench.integration
Bundle-ActivationPolicy: lazy
Bundle-RequiredExecutionEnvironment: J2SE-1.5
Bundle-Vendor: JBoss by Red Hat
Modified: trunk/maven/plugins/org.jboss.tools.maven.seam/plugin.xml
===================================================================
--- trunk/maven/plugins/org.jboss.tools.maven.seam/plugin.xml 2009-08-14 20:01:18 UTC (rev 17093)
+++ trunk/maven/plugins/org.jboss.tools.maven.seam/plugin.xml 2009-08-14 21:31:23 UTC (rev 17094)
@@ -7,4 +7,24 @@
eventTypes="POST_INSTALL"/>
</extension>
+ <extension point="org.maven.ide.eclipse.projectConfigurators">
+ <configurator
+ id="org.jboss.tools.maven.seam.configurator"
+ class="org.jboss.tools.maven.seam.configurators.SeamProjectConfigurator"
+ name="Seam Project configurator" priority="200"/>
+ </extension>
+
+ <extension
+ point="org.eclipse.ui.preferencePages">
+ <page
+ category="org.jboss.tools.common.model.ui.MainPreferencePage"
+ class="org.jboss.tools.maven.seam.preferences.SeamConfiguratorPreferencePage"
+ id="org.jboss.tools.maven.seam.preferences.seamConfiguratorPreferencePage"
+ name="JBoss Maven Integration"/>
+ </extension>
+
+ <extension
+ point="org.eclipse.core.runtime.preferences">
+ <initializer class="org.jboss.tools.maven.seam.preferences.SeamConfiguratorPreferencesInitializer"/>
+ </extension>
</plugin>
Modified: trunk/maven/plugins/org.jboss.tools.maven.seam/src/org/jboss/tools/maven/seam/MavenSeamActivator.java
===================================================================
--- trunk/maven/plugins/org.jboss.tools.maven.seam/src/org/jboss/tools/maven/seam/MavenSeamActivator.java 2009-08-14 20:01:18 UTC (rev 17093)
+++ trunk/maven/plugins/org.jboss.tools.maven.seam/src/org/jboss/tools/maven/seam/MavenSeamActivator.java 2009-08-14 21:31:23 UTC (rev 17094)
@@ -72,6 +72,10 @@
// The plug-in ID
public static final String PLUGIN_ID = "org.jboss.tools.maven.seam";
+
+ public static final String CONFIGURE_SEAM = "configureSeam"; //$NON-NLS-1$
+
+ public static final boolean CONFIGURE_SEAM_VALUE = true;
// The shared instance
private static MavenSeamActivator plugin;
Added: trunk/maven/plugins/org.jboss.tools.maven.seam/src/org/jboss/tools/maven/seam/configurators/SeamProjectConfigurator.java
===================================================================
--- trunk/maven/plugins/org.jboss.tools.maven.seam/src/org/jboss/tools/maven/seam/configurators/SeamProjectConfigurator.java (rev 0)
+++ trunk/maven/plugins/org.jboss.tools.maven.seam/src/org/jboss/tools/maven/seam/configurators/SeamProjectConfigurator.java 2009-08-14 21:31:23 UTC (rev 17094)
@@ -0,0 +1,305 @@
+package org.jboss.tools.maven.seam.configurators;
+
+import java.util.List;
+
+import org.apache.maven.model.Dependency;
+import org.apache.maven.project.MavenProject;
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.resources.ProjectScope;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.core.runtime.preferences.IEclipsePreferences;
+import org.eclipse.core.runtime.preferences.IScopeContext;
+import org.eclipse.jface.preference.IPreferenceStore;
+import org.eclipse.jst.j2ee.internal.project.J2EEProjectUtilities;
+import org.eclipse.jst.j2ee.project.JavaEEProjectUtilities;
+import org.eclipse.wst.common.componentcore.ComponentCore;
+import org.eclipse.wst.common.componentcore.ModuleCoreNature;
+import org.eclipse.wst.common.componentcore.resources.IVirtualComponent;
+import org.eclipse.wst.common.componentcore.resources.IVirtualReference;
+import org.eclipse.wst.common.frameworks.datamodel.IDataModel;
+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.IProjectFacetVersion;
+import org.eclipse.wst.common.project.facet.core.ProjectFacetsManager;
+import org.jboss.tools.common.model.util.EclipseResourceUtil;
+import org.jboss.tools.jst.web.kb.IKbProject;
+import org.jboss.tools.maven.core.IJBossMavenConstants;
+import org.jboss.tools.maven.core.internal.project.facet.MavenFacetInstallDataModelProvider;
+import org.jboss.tools.maven.seam.MavenSeamActivator;
+import org.jboss.tools.seam.core.ISeamProject;
+import org.jboss.tools.seam.core.SeamCorePlugin;
+import org.jboss.tools.seam.internal.core.project.facet.ISeamFacetDataModelProperties;
+import org.jboss.tools.seam.internal.core.project.facet.SeamFacetInstallDataModelProvider;
+import org.maven.ide.eclipse.MavenPlugin;
+import org.maven.ide.eclipse.core.IMavenConstants;
+import org.maven.ide.eclipse.project.IMavenProjectFacade;
+import org.maven.ide.eclipse.project.MavenProjectChangedEvent;
+import org.maven.ide.eclipse.project.MavenProjectManager;
+import org.maven.ide.eclipse.project.configurator.AbstractProjectConfigurator;
+import org.maven.ide.eclipse.project.configurator.ProjectConfigurationRequest;
+import org.osgi.service.prefs.BackingStoreException;
+
+public class SeamProjectConfigurator extends AbstractProjectConfigurator {
+
+ private static final String JBOSS_SEAM_ARTIFACT_PREFIX = "jboss-seam"; //$NON-NLS-1$
+ private static final String ORG_JBOSS_SEAM_GROUP_ID = "org.jboss.seam"; //$NON-NLS-1$
+ private static final String JBOSS_SEAM_ARTIFACT_ID = "jboss-seam"; //$NON-NLS-1$
+
+ protected static final IProjectFacet dynamicWebFacet;
+ protected static final IProjectFacetVersion dynamicWebVersion;
+ protected static final IProjectFacet javaFacet;
+ protected static final IProjectFacetVersion javaVersion;
+ protected static final IProjectFacet jsfFacet;
+ protected static final IProjectFacetVersion jsfVersion;
+ protected static final IProjectFacet earFacet;
+ protected static final IProjectFacetVersion earVersion;
+ protected static final IProjectFacet ejbFacet;
+ protected static final IProjectFacetVersion ejbVersion;
+ protected static final IProjectFacet m2Facet;
+ protected static final IProjectFacetVersion m2Version;
+ private static final IProjectFacet seamFacet;
+
+ static {
+ seamFacet = ProjectFacetsManager.getProjectFacet("jst.seam"); //$NON-NLS-1$
+ javaFacet = ProjectFacetsManager.getProjectFacet("jst.java"); //$NON-NLS-1$
+ javaVersion = javaFacet.getVersion("5.0"); //$NON-NLS-1$
+ dynamicWebFacet = ProjectFacetsManager.getProjectFacet("jst.web"); //$NON-NLS-1$
+ dynamicWebVersion = dynamicWebFacet.getVersion("2.5"); //$NON-NLS-1$
+ jsfFacet = ProjectFacetsManager.getProjectFacet("jst.jsf"); //$NON-NLS-1$
+ jsfVersion = jsfFacet.getVersion("1.2"); //$NON-NLS-1$
+ earFacet = ProjectFacetsManager.getProjectFacet("jst.ear"); //$NON-NLS-1$
+ earVersion = earFacet.getVersion("5.0"); //$NON-NLS-1$
+ m2Facet = ProjectFacetsManager.getProjectFacet("jboss.m2"); //$NON-NLS-1$
+ m2Version = m2Facet.getVersion("1.0"); //$NON-NLS-1$
+ ejbFacet = ProjectFacetsManager.getProjectFacet("jst.ejb"); //$NON-NLS-1$
+ ejbVersion = ejbFacet.getVersion("3.0"); //$NON-NLS-1$
+ }
+
+ @Override
+ public void configure(ProjectConfigurationRequest request,
+ IProgressMonitor monitor) throws CoreException {
+ // adds Seam capabilities if there are Seam dependencies
+ MavenProject mavenProject = request.getMavenProject();
+ IProject project = request.getProject();
+ configureInternal(mavenProject,project, monitor);
+
+ }
+
+ private void configureInternal(MavenProject mavenProject,IProject project,
+ IProgressMonitor monitor) throws CoreException {
+ IPreferenceStore store = MavenSeamActivator.getDefault().getPreferenceStore();
+ boolean configureSeam = store.getBoolean(MavenSeamActivator.CONFIGURE_SEAM);
+ if (!configureSeam) {
+ return;
+ }
+ String packaging = mavenProject.getPackaging();
+ String seamVersion = getSeamVersion(mavenProject);
+ if (seamVersion != null) {
+ IProject[] earProjects = J2EEProjectUtilities.getReferencingEARProjects(project);
+ String deploying = packaging;
+ if (earProjects.length > 0) {
+ deploying = "ear"; //$NON-NLS-1$
+ }
+ IDataModel model = createSeamDataModel(deploying);
+ final IFacetedProject fproj = ProjectFacetsManager.create(project);
+ if ("war".equals(packaging)) { //$NON-NLS-1$
+ installWarFacets(fproj,model,seamVersion, monitor);
+ } else if ("ear".equals(packaging)) { //$NON-NLS-1$
+ installEarFacets(fproj, monitor);
+ installM2Facet(fproj, monitor);
+ } else if ("ejb".equals(packaging)) { //$NON-NLS-1$
+ installM2Facet(fproj,monitor);
+ installEjbFacets(fproj, monitor);
+ addSeamSupport(project, earProjects);
+ storeSettings(project);
+
+ }
+// addSeamSupport(project);
+//
+// storeSettings(project);
+ }
+ }
+
+ @Override
+ protected void mavenProjectChanged(MavenProjectChangedEvent event,
+ IProgressMonitor monitor) throws CoreException {
+ IMavenProjectFacade facade = event.getMavenProject();
+ if(facade != null) {
+ IProject project = facade.getProject();
+ if(isWTPProject(project)) {
+ MavenProject mavenProject = facade.getMavenProject(monitor);
+ configureInternal(mavenProject, project, monitor);
+ }
+ }
+ super.mavenProjectChanged(event, monitor);
+ }
+
+ private boolean isWTPProject(IProject project) {
+ return ModuleCoreNature.getModuleCoreNature(project) != null;
+ }
+
+ private void installM2Facet(IFacetedProject fproj, IProgressMonitor monitor) throws CoreException {
+ if (!fproj.hasProjectFacet(m2Facet)) {
+ IDataModel config = (IDataModel) new MavenFacetInstallDataModelProvider().create();
+ config.setBooleanProperty(IJBossMavenConstants.MAVEN_PROJECT_EXISTS, true);
+ fproj.installProjectFacet(m2Version, config, monitor);
+ }
+ }
+
+ private IProjectFacetVersion getSeamFacetVersion(String seamVersion) {
+ String version = seamVersion.substring(0, 3);
+ return seamFacet.getVersion(version);
+ }
+
+ private void installEarFacets(IFacetedProject fproj,IProgressMonitor monitor) throws CoreException {
+ if (!fproj.hasProjectFacet(earFacet)) {
+ fproj.installProjectFacet(earVersion, null, monitor);
+ }
+
+ }
+
+ private void installEjbFacets(IFacetedProject fproj,IProgressMonitor monitor) throws CoreException {
+ if (!fproj.hasProjectFacet(javaFacet)) {
+ fproj.installProjectFacet(javaVersion, null, monitor);
+ }
+ if (!fproj.hasProjectFacet(ejbFacet)) {
+ fproj.installProjectFacet(ejbVersion, null, monitor);
+ }
+ }
+
+ private void installWarFacets(IFacetedProject fproj,IDataModel model, String seamVersion,IProgressMonitor monitor) throws CoreException {
+ if (!fproj.hasProjectFacet(javaFacet)) {
+ fproj.installProjectFacet(javaVersion, null, monitor);
+ }
+ if (!fproj.hasProjectFacet(dynamicWebFacet)) {
+ fproj.installProjectFacet(dynamicWebVersion, null, monitor);
+ }
+ installJSFFacet(fproj, monitor);
+ installM2Facet(fproj, monitor);
+ if (!fproj.hasProjectFacet(seamFacet)) {
+ IProjectFacetVersion seamFacetVersion = getSeamFacetVersion(seamVersion);
+ fproj.installProjectFacet(seamFacetVersion, model, monitor);
+ }
+ }
+
+ private void installJSFFacet(IFacetedProject fproj, IProgressMonitor monitor)
+ throws CoreException {
+ if (!fproj.hasProjectFacet(jsfFacet)) {
+ fproj.installProjectFacet(jsfVersion, null, monitor);
+ }
+ }
+
+ private void storeSettings(IProject project) {
+ IScopeContext projectScope = new ProjectScope(project);
+ IEclipsePreferences prefs = projectScope.getNode(SeamCorePlugin.PLUGIN_ID);
+ prefs.put(ISeamFacetDataModelProperties.SEAM_SETTINGS_VERSION,
+ ISeamFacetDataModelProperties.SEAM_SETTINGS_VERSION_1_1);
+
+ try {
+ prefs.flush();
+ } catch (BackingStoreException e) {
+ MavenSeamActivator.log(e);
+ }
+ }
+
+ private void addSeamSupport(IProject project, IProject[] earProjects) {
+ if(project==null) {
+ return;
+ }
+ try {
+ if (!project.hasNature(ISeamProject.NATURE_ID)) {
+ EclipseResourceUtil.addNatureToProject(project, ISeamProject.NATURE_ID);
+ }
+ if(!project.hasNature(IKbProject.NATURE_ID)) {
+ EclipseResourceUtil.addNatureToProject(project, IKbProject.NATURE_ID);
+ }
+ for (int i = 0; i < earProjects.length; i++) {
+ IEclipsePreferences prefs = SeamCorePlugin
+ .getSeamPreferences(project);
+ String seamParentProject = prefs.get(ISeamFacetDataModelProperties.SEAM_PARENT_PROJECT,null);
+ if (seamParentProject == null) {
+ IProject earProject = earProjects[i];
+ IProject webProject = getReferencingSeamWebProject(earProject);
+ if (webProject != null) {
+ prefs.put(ISeamFacetDataModelProperties.SEAM_PARENT_PROJECT,webProject.getName());
+ break;
+ }
+ }
+ }
+
+ } catch (CoreException e) {
+ MavenSeamActivator.log(e);
+ }
+
+ }
+
+ private IProject getReferencingSeamWebProject(IProject earProject)
+ throws CoreException {
+ IVirtualComponent component = ComponentCore.createComponent(earProject);
+ if (component != null) {
+ IVirtualReference[] references = component.getReferences();
+ for (int i = 0; i < references.length; i++) {
+ IVirtualComponent refComponent = references[i].getReferencedComponent();
+ IProject refProject = refComponent.getProject();
+ if (JavaEEProjectUtilities.isDynamicWebProject(refProject)) {
+ if (refProject.hasNature(IMavenConstants.NATURE_ID)) {
+ IFile pom = refProject.getFile(IMavenConstants.POM_FILE_NAME);
+ if (pom.exists()) {
+ MavenProjectManager projectManager = MavenPlugin.getDefault().getMavenProjectManager();
+ IMavenProjectFacade facade = projectManager.create(pom, true, null);
+ if(facade!=null) {
+ MavenProject mavenProject = facade.getMavenProject(null);
+ if (mavenProject != null) {
+ String version = getSeamVersion(mavenProject);
+ if (version != null) {
+ return refProject;
+ }
+ }
+ }
+ }
+
+ }
+ }
+ }
+ }
+ return null;
+ }
+
+ private String getSeamVersion(MavenProject mavenProject) {
+ List<Dependency> dependencies = mavenProject.getDependencies();
+ Dependency seamDependency = null;
+ for (Dependency dependency:dependencies) {
+ String groupId = dependency.getGroupId();
+ if (groupId != null && ORG_JBOSS_SEAM_GROUP_ID.equals(groupId)) {
+ String artifactId = dependency.getArtifactId();
+ if (artifactId != null && JBOSS_SEAM_ARTIFACT_ID.equals(artifactId)) {
+ return dependency.getVersion();
+ } else if (artifactId != null && artifactId.startsWith(JBOSS_SEAM_ARTIFACT_PREFIX)) {
+ seamDependency = dependency;
+ }
+ }
+ }
+ if (seamDependency != null) {
+ return seamDependency.getVersion();
+ }
+ return null;
+ }
+
+ private IDataModel createSeamDataModel(String deployType) {
+ IDataModel config = (IDataModel) new SeamFacetInstallDataModelProvider().create();
+ //config.setStringProperty(ISeamFacetDataModelProperties.SEAM_RUNTIME_NAME, SEAM_1_2_0);
+ config.setBooleanProperty(ISeamFacetDataModelProperties.DB_ALREADY_EXISTS, true);
+ config.setBooleanProperty(ISeamFacetDataModelProperties.RECREATE_TABLES_AND_DATA_ON_DEPLOY, false);
+ config.setStringProperty(ISeamFacetDataModelProperties.JBOSS_AS_DEPLOY_AS, deployType);
+ //config.setStringProperty(ISeamFacetDataModelProperties.SESSION_BEAN_PACKAGE_NAME, "org.session.beans");
+ //config.setStringProperty(ISeamFacetDataModelProperties.ENTITY_BEAN_PACKAGE_NAME, "org.entity.beans");
+ //config.setStringProperty(ISeamFacetDataModelProperties.TEST_CASES_PACKAGE_NAME, "org.test.beans");
+ config.setBooleanProperty(ISeamFacetDataModelProperties.CONFIGURE_DEFAULT_SEAM_RUNTIME, false);
+ config.setBooleanProperty(ISeamFacetDataModelProperties.CONFIGURE_WAR_PROJECT, false);
+ //config.setStringProperty(ISeamFacetDataModelProperties.SEAM_CONNECTION_PROFILE, "noop-connection");
+ //config.setProperty(ISeamFacetDataModelProperties.JDBC_DRIVER_JAR_PATH, new String[] { "noop-driver.jar" });
+ return config;
+ }
+}
Modified: trunk/maven/plugins/org.jboss.tools.maven.seam/src/org/jboss/tools/maven/seam/internal/project/facet/MavenPostInstallListener.java
===================================================================
--- trunk/maven/plugins/org.jboss.tools.maven.seam/src/org/jboss/tools/maven/seam/internal/project/facet/MavenPostInstallListener.java 2009-08-14 20:01:18 UTC (rev 17093)
+++ trunk/maven/plugins/org.jboss.tools.maven.seam/src/org/jboss/tools/maven/seam/internal/project/facet/MavenPostInstallListener.java 2009-08-14 21:31:23 UTC (rev 17094)
@@ -20,8 +20,8 @@
private IDataModel m2FacetModel, seamFacetModel;
private boolean configured = false;
- private static final String M2_FACET_MODEL_PROVIDER = "org.jboss.tools.maven.core.internal.project.facet.MavenFacetInstallDataModelProvider";
- private static final String SEAM_FACET_MODEL_PROVIDER = "org.jboss.tools.seam.internal.core.project.facet.SeamFacetInstallDataModelProvider";
+ private static final String M2_FACET_MODEL_PROVIDER = "org.jboss.tools.maven.core.internal.project.facet.MavenFacetInstallDataModelProvider"; //$NON-NLS-1$
+ private static final String SEAM_FACET_MODEL_PROVIDER = "org.jboss.tools.seam.internal.core.project.facet.SeamFacetInstallDataModelProvider"; //$NON-NLS-1$
public void handleEvent(IFacetedProjectEvent event) {
IFacetedProject facetedProject = event.getProject();
Set<IProjectFacetVersion> projectFacets = facetedProject
@@ -57,7 +57,10 @@
}
if (isSeamProject && isM2Project && !configured) {
- MavenSeamActivator.getDefault().configureSeamProject(seamFacetModel,m2FacetModel);
+ boolean mavenProjectExists = m2FacetModel.getBooleanProperty(IJBossMavenConstants.MAVEN_PROJECT_EXISTS);
+ if (!mavenProjectExists) {
+ MavenSeamActivator.getDefault().configureSeamProject(seamFacetModel,m2FacetModel);
+ }
configured=true;
}
}
Added: trunk/maven/plugins/org.jboss.tools.maven.seam/src/org/jboss/tools/maven/seam/preferences/SeamConfiguratorPreferencePage.java
===================================================================
--- trunk/maven/plugins/org.jboss.tools.maven.seam/src/org/jboss/tools/maven/seam/preferences/SeamConfiguratorPreferencePage.java (rev 0)
+++ trunk/maven/plugins/org.jboss.tools.maven.seam/src/org/jboss/tools/maven/seam/preferences/SeamConfiguratorPreferencePage.java 2009-08-14 21:31:23 UTC (rev 17094)
@@ -0,0 +1,55 @@
+package org.jboss.tools.maven.seam.preferences;
+
+import org.eclipse.jface.preference.IPreferenceStore;
+import org.eclipse.jface.preference.PreferencePage;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Button;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Control;
+import org.eclipse.ui.IWorkbench;
+import org.eclipse.ui.IWorkbenchPreferencePage;
+import org.jboss.tools.maven.seam.MavenSeamActivator;
+
+public class SeamConfiguratorPreferencePage extends PreferencePage implements
+ IWorkbenchPreferencePage {
+
+
+ private Button button;
+
+ @Override
+ protected Control createContents(Composite parent) {
+ Composite composite = new Composite(parent, SWT.NONE);
+ GridLayout layout = new GridLayout(1, false);
+ layout.marginWidth = 0;
+ layout.marginHeight = 0;
+ composite.setLayout(layout);
+
+ button = new Button(composite,SWT.CHECK);
+ button.setText("Configure Seam when importing Maven projects");
+ IPreferenceStore store = MavenSeamActivator.getDefault().getPreferenceStore();
+ boolean configureSeam = store.getBoolean(MavenSeamActivator.CONFIGURE_SEAM);
+ button.setSelection(configureSeam);
+ return composite;
+ }
+
+ public void init(IWorkbench workbench) {
+ }
+
+ @Override
+ protected void performDefaults() {
+ button.setSelection(MavenSeamActivator.CONFIGURE_SEAM_VALUE);
+ IPreferenceStore store = MavenSeamActivator.getDefault().getPreferenceStore();
+ store.setValue(MavenSeamActivator.CONFIGURE_SEAM, MavenSeamActivator.CONFIGURE_SEAM_VALUE);
+ super.performDefaults();
+ }
+
+ @Override
+ public boolean performOk() {
+ IPreferenceStore store = MavenSeamActivator.getDefault().getPreferenceStore();
+ store.setValue(MavenSeamActivator.CONFIGURE_SEAM, button.getSelection());
+ return super.performOk();
+ }
+
+
+}
Added: trunk/maven/plugins/org.jboss.tools.maven.seam/src/org/jboss/tools/maven/seam/preferences/SeamConfiguratorPreferencesInitializer.java
===================================================================
--- trunk/maven/plugins/org.jboss.tools.maven.seam/src/org/jboss/tools/maven/seam/preferences/SeamConfiguratorPreferencesInitializer.java (rev 0)
+++ trunk/maven/plugins/org.jboss.tools.maven.seam/src/org/jboss/tools/maven/seam/preferences/SeamConfiguratorPreferencesInitializer.java 2009-08-14 21:31:23 UTC (rev 17094)
@@ -0,0 +1,21 @@
+package org.jboss.tools.maven.seam.preferences;
+
+
+import org.eclipse.core.runtime.preferences.AbstractPreferenceInitializer;
+import org.eclipse.core.runtime.preferences.DefaultScope;
+import org.eclipse.core.runtime.preferences.IEclipsePreferences;
+import org.jboss.tools.maven.seam.MavenSeamActivator;
+
+public class SeamConfiguratorPreferencesInitializer extends
+ AbstractPreferenceInitializer {
+
+ @Override
+ public void initializeDefaultPreferences() {
+ IEclipsePreferences node = new DefaultScope().getNode(MavenSeamActivator.PLUGIN_ID);
+
+ node.putBoolean(
+ MavenSeamActivator.CONFIGURE_SEAM,
+ MavenSeamActivator.CONFIGURE_SEAM_VALUE);
+ }
+
+}
Modified: trunk/maven/plugins/org.jboss.tools.maven.ui/src/org/jboss/tools/maven/ui/internal/project/facet/MavenFacetInstallPage.java
===================================================================
--- trunk/maven/plugins/org.jboss.tools.maven.ui/src/org/jboss/tools/maven/ui/internal/project/facet/MavenFacetInstallPage.java 2009-08-14 20:01:18 UTC (rev 17093)
+++ trunk/maven/plugins/org.jboss.tools.maven.ui/src/org/jboss/tools/maven/ui/internal/project/facet/MavenFacetInstallPage.java 2009-08-14 21:31:23 UTC (rev 17094)
@@ -5,6 +5,11 @@
import javax.swing.JButton;
+import org.apache.maven.model.Model;
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.resources.ResourcesPlugin;
+import org.eclipse.core.runtime.CoreException;
import org.eclipse.jst.j2ee.project.facet.IJ2EEFacetConstants;
import org.eclipse.jst.j2ee.web.project.facet.WebFacetUtils;
import org.eclipse.swt.SWT;
@@ -28,6 +33,10 @@
import org.eclipse.wst.common.project.facet.ui.IFacetWizardPage;
import org.eclipse.wst.common.project.facet.ui.IWizardContext;
import org.jboss.tools.maven.core.IJBossMavenConstants;
+import org.jboss.tools.maven.ui.Activator;
+import org.maven.ide.eclipse.MavenPlugin;
+import org.maven.ide.eclipse.core.IMavenConstants;
+import org.maven.ide.eclipse.embedder.MavenModelManager;
public class MavenFacetInstallPage extends DataModelWizardPage implements
IFacetWizardPage {
@@ -37,6 +46,8 @@
private Text artifactId;
private Text version;
private Combo packaging;
+ private Text description;
+ private Text name;
public static final IProjectFacet SEAM_FACET = ProjectFacetsManager.getProjectFacet(SEAM_FACET_ID);
public MavenFacetInstallPage() {
@@ -55,10 +66,42 @@
GridData gd = new GridData(GridData.FILL_BOTH);
composite.setLayoutData(gd);
+ String projectName = getDataModel().getStringProperty(IFacetProjectCreationDataModelProperties.FACET_PROJECT_NAME);
+ IProject project = ResourcesPlugin.getWorkspace().getRoot().getProject(projectName);
+ boolean mavenProjectExists = false;
+ if (project != null && project.isOpen()) {
+ try {
+ boolean hasMavenNature = project.hasNature(IMavenConstants.NATURE_ID);
+ IFile pom = project.getFile(IMavenConstants.POM_FILE_NAME);
+ if (hasMavenNature && pom.exists()) {
+ getDataModel().setBooleanProperty(IJBossMavenConstants.MAVEN_PROJECT_EXISTS, true);
+ mavenProjectExists = true;
+ MavenModelManager modelManager = MavenPlugin.getDefault().getMavenModelManager();
+ Model mavenModel = modelManager.readMavenModel(pom);
+ String groupId = mavenModel.getGroupId();
+ model.setStringProperty(IJBossMavenConstants.GROUP_ID, groupId);
+ String artifactId = mavenModel.getArtifactId();
+ model.setStringProperty(IJBossMavenConstants.ARTIFACT_ID, artifactId);
+ String version = mavenModel.getVersion();
+ model.setStringProperty(IJBossMavenConstants.VERSION, version);
+ String packaging = mavenModel.getPackaging();
+ model.setStringProperty(IJBossMavenConstants.PACKAGING, packaging);
+ String name = mavenModel.getName();
+ model.setStringProperty(IJBossMavenConstants.NAME, name);
+ String description = mavenModel.getDescription();
+ model.setStringProperty(IJBossMavenConstants.DESCRIPTION, description);
+ }
+ } catch (CoreException e) {
+ Activator.log(e);
+ }
+
+ }
+
groupId = createField(composite,"Group Id:",IJBossMavenConstants.GROUP_ID);
artifactId = createField(composite, "Artifact Id:", IJBossMavenConstants.ARTIFACT_ID);
- String projectName = getDataModel().getStringProperty(IFacetProjectCreationDataModelProperties.FACET_PROJECT_NAME);
- artifactId.setText(projectName);
+ if (!mavenProjectExists) {
+ artifactId.setText(projectName);
+ }
version = createField(composite, "Version:", IJBossMavenConstants.VERSION);
@@ -67,39 +110,64 @@
packaging = new Combo(composite, SWT.READ_ONLY);
gd = new GridData(GridData.FILL_HORIZONTAL);
packaging.setLayoutData(gd);
- synchHelper.synchCombo(packaging, IJBossMavenConstants.PACKAGING, null);
- // FIXME
String[] items = { "war","ear", "ejb", "jar" }; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$
packaging.setItems(items);
- IFacetedProjectWorkingCopy fpwc = (IFacetedProjectWorkingCopy) getDataModel().getProperty(IFacetDataModelProperties.FACETED_PROJECT_WORKING_COPY);
- if (fpwc.hasProjectFacet(WebFacetUtils.WEB_FACET)) {
- packaging.select(0);
- } else if (fpwc.hasProjectFacet(IJ2EEFacetConstants.ENTERPRISE_APPLICATION_FACET)) {
- packaging.select(1);
- } else if (fpwc.hasProjectFacet(IJ2EEFacetConstants.EJB_FACET)) {
- packaging.select(2);
- } else {
- packaging.select(3);
- }
- Text name = createField(composite, "Name:", IJBossMavenConstants.NAME);
- name.setText(projectName);
- createField(composite, "Description", IJBossMavenConstants.DESCRIPTION);
-
- if (fpwc.hasProjectFacet(SEAM_FACET)) {
- Text seamVersion = createField(composite, "Seam Maven version:", IJBossMavenConstants.SEAM_MAVEN_VERSION);
- IProjectFacetVersion seamFacetVersion = fpwc.getProjectFacetVersion(SEAM_FACET);
- if ("2.0".equals(seamFacetVersion.getVersionString())) { //$NON-NLS-1$
- seamVersion.setText("2.0.2.SP1"); //$NON-NLS-1$
+ IFacetedProjectWorkingCopy fpwc = null;
+ try {
+ fpwc = (IFacetedProjectWorkingCopy) getDataModel().getProperty(IFacetDataModelProperties.FACETED_PROJECT_WORKING_COPY);
+ if (!mavenProjectExists) {
+ if (fpwc.hasProjectFacet(WebFacetUtils.WEB_FACET)) {
+ packaging.select(0);
+ } else if (fpwc
+ .hasProjectFacet(IJ2EEFacetConstants.ENTERPRISE_APPLICATION_FACET)) {
+ packaging.select(1);
+ } else if (fpwc.hasProjectFacet(IJ2EEFacetConstants.EJB_FACET)) {
+ packaging.select(2);
+ } else {
+ packaging.select(3);
+ }
} else {
- seamVersion.setText("2.1.1.GA"); //$NON-NLS-1$
+ String mavenPackaging = getDataModel().getStringProperty(IJBossMavenConstants.PACKAGING);
+ packaging.setText(mavenPackaging);
}
- Button removeWTPContainers = new Button(composite,SWT.CHECK);
- removeWTPContainers.setText("Remove WTP Classpath containers");
- synchHelper.synchCheckbox(removeWTPContainers, IJBossMavenConstants.REMOVE_WTP_CLASSPATH_CONTAINERS, null);
- // FIXME add the Validate button
+ synchHelper.synchCombo(packaging, IJBossMavenConstants.PACKAGING, null);
+
+ name = createField(composite, "Name:", IJBossMavenConstants.NAME);
+ name.setText(projectName);
+ description = createField(composite, "Description", IJBossMavenConstants.DESCRIPTION);
+
+ if (!mavenProjectExists && fpwc.hasProjectFacet(SEAM_FACET)) {
+ Text seamVersion = createField(composite, "Seam Maven version:", IJBossMavenConstants.SEAM_MAVEN_VERSION);
+ IProjectFacetVersion seamFacetVersion = fpwc.getProjectFacetVersion(SEAM_FACET);
+ if ("2.0".equals(seamFacetVersion.getVersionString())) { //$NON-NLS-1$
+ seamVersion.setText("2.0.2.SP1"); //$NON-NLS-1$
+ } else if ("2.1".equals(seamFacetVersion.getVersionString())) { //$NON-NLS-1$
+ seamVersion.setText("2.1.1.GA"); //$NON-NLS-1$
+ } else if ("2.2".equals(seamFacetVersion.getVersionString())) { //$NON-NLS-1$
+ seamVersion.setText("2.2.0.GA"); //$NON-NLS-1$
+ }
+ Button removeWTPContainers = new Button(composite,SWT.CHECK);
+ removeWTPContainers.setText("Remove WTP Classpath containers");
+ synchHelper.synchCheckbox(removeWTPContainers, IJBossMavenConstants.REMOVE_WTP_CLASSPATH_CONTAINERS, null);
+ // FIXME add the Validate button
+ }
+ } catch (Exception e) {
+ Activator.log(e);
+ } finally {
+ if (fpwc != null) {
+ fpwc.dispose();
+ }
}
+ if (mavenProjectExists) {
+ artifactId.setEditable(false);
+ groupId.setEditable(false);
+ version.setEditable(false);
+ name.setEditable(false);
+ description.setEditable(false);
+ packaging.setEnabled(false);
+ }
validatePage();
return composite;
}
Modified: trunk/seam/plugins/org.jboss.tools.seam.core/src/org/jboss/tools/seam/internal/core/project/facet/ISeamFacetDataModelProperties.java
===================================================================
--- trunk/seam/plugins/org.jboss.tools.seam.core/src/org/jboss/tools/seam/internal/core/project/facet/ISeamFacetDataModelProperties.java 2009-08-14 20:01:18 UTC (rev 17093)
+++ trunk/seam/plugins/org.jboss.tools.seam.core/src/org/jboss/tools/seam/internal/core/project/facet/ISeamFacetDataModelProperties.java 2009-08-14 21:31:23 UTC (rev 17094)
@@ -293,4 +293,8 @@
String DEFAULT_MODEL_SRC_FOLDER_NAME = "main"; //$NON-NLS-1$
String CREATE_EAR_PROJECTS = "create.ear.projects"; //$NON-NLS-1$
+
+ String CONFIGURE_DEFAULT_SEAM_RUNTIME = "configure.default.seam.runtime"; //$NON-NLS-1$
+
+ String CONFIGURE_WAR_PROJECT = "configure.war.project"; //$NON-NLS-1$
}
\ No newline at end of file
Modified: trunk/seam/plugins/org.jboss.tools.seam.core/src/org/jboss/tools/seam/internal/core/project/facet/SeamFacetAbstractInstallDelegate.java
===================================================================
--- trunk/seam/plugins/org.jboss.tools.seam.core/src/org/jboss/tools/seam/internal/core/project/facet/SeamFacetAbstractInstallDelegate.java 2009-08-14 20:01:18 UTC (rev 17093)
+++ trunk/seam/plugins/org.jboss.tools.seam.core/src/org/jboss/tools/seam/internal/core/project/facet/SeamFacetAbstractInstallDelegate.java 2009-08-14 21:31:23 UTC (rev 17094)
@@ -333,12 +333,14 @@
webInfClassesMetaInf.mkdirs();
webLibFolder = new File(webContentFolder, WEB_LIBRARIES_RELATED_PATH);
srcFolder = isWarConfiguration(model) ? new File(warDefaultSrcRootFolder.getUnderlyingFolder().getLocation().toFile(), DEFAULT_MODEL_SRC_FOLDER_NAME) : warDefaultSrcRootFolder.getUnderlyingFolder().getLocation().toFile();
- Object runtimeName = model.getProperty(ISeamFacetDataModelProperties.SEAM_RUNTIME_NAME);
- if(runtimeName!=null) {
- copyFilesToWarProject(project, fv, model, monitor);
- } else {
- // If seam runtime is null then just modify web.xml and add seam nature.
- configureWebXml(project);
+ if (model.getBooleanProperty(CONFIGURE_WAR_PROJECT)) {
+ Object runtimeName = model.getProperty(ISeamFacetDataModelProperties.SEAM_RUNTIME_NAME);
+ if (runtimeName != null) {
+ copyFilesToWarProject(project, fv, model, monitor);
+ } else {
+ // If seam runtime is null then just modify web.xml and add seam nature.
+ configureWebXml(project);
+ }
}
}
@@ -818,7 +820,7 @@
if(model.getProperty(ISeamFacetDataModelProperties.TEST_CASES_PACKAGE_NAME)==null) {
model.setProperty(ISeamFacetDataModelProperties.TEST_CASES_PACKAGE_NAME, "org.domain." + projectNamePackage + ".test"); //$NON-NLS-1$ //$NON-NLS-2$
}
- if(model.getProperty(ISeamFacetDataModelProperties.SEAM_RUNTIME_NAME)==null) {
+ if(model.getProperty(ISeamFacetDataModelProperties.SEAM_RUNTIME_NAME)==null && model.getBooleanProperty(CONFIGURE_DEFAULT_SEAM_RUNTIME)) {
String runtimeName = SeamFacetInstallDataModelProvider.getSeamRuntimeDefaultValue(model);
if((runtimeName!=null && runtimeName.length()>0)) {
model.setProperty(ISeamFacetDataModelProperties.SEAM_RUNTIME_NAME, runtimeName);
Modified: trunk/seam/plugins/org.jboss.tools.seam.core/src/org/jboss/tools/seam/internal/core/project/facet/SeamFacetInstallDataModelProvider.java
===================================================================
--- trunk/seam/plugins/org.jboss.tools.seam.core/src/org/jboss/tools/seam/internal/core/project/facet/SeamFacetInstallDataModelProvider.java 2009-08-14 20:01:18 UTC (rev 17093)
+++ trunk/seam/plugins/org.jboss.tools.seam.core/src/org/jboss/tools/seam/internal/core/project/facet/SeamFacetInstallDataModelProvider.java 2009-08-14 21:31:23 UTC (rev 17094)
@@ -86,7 +86,9 @@
names.add(ISeamFacetDataModelProperties.SEAM_RUNTIME_NAME);
names.add(ISeamFacetDataModelProperties.HIBERNATE_HBM2DDL_AUTO);
names.add(ISeamFacetDataModelProperties.CREATE_EAR_PROJECTS);
-
+ names.add(CONFIGURE_DEFAULT_SEAM_RUNTIME);
+ names.add(CONFIGURE_WAR_PROJECT);
+
return names;
}
@@ -120,6 +122,10 @@
}
else if(JBOSS_AS_TARGET_RUNTIME.equals(propertyName)) {
return null;
+ } else if (CONFIGURE_DEFAULT_SEAM_RUNTIME.equals(propertyName)) {
+ return Boolean.TRUE;
+ } else if (CONFIGURE_WAR_PROJECT.equals(propertyName)) {
+ return Boolean.TRUE;
}
return super.getDefaultProperty(propertyName);
}
16 years, 4 months
JBoss Tools SVN: r17093 - trunk/hibernatetools/docs/reference/en/modules.
by jbosstools-commits@lists.jboss.org
Author: smukhina
Date: 2009-08-14 16:01:18 -0400 (Fri, 14 Aug 2009)
New Revision: 17093
Modified:
trunk/hibernatetools/docs/reference/en/modules/plugins.xml
Log:
https://jira.jboss.org/jira/browse/JBDS-816 Misprint in HQL Editor and Hibernate Criteria Editor section - corrected
Modified: trunk/hibernatetools/docs/reference/en/modules/plugins.xml
===================================================================
--- trunk/hibernatetools/docs/reference/en/modules/plugins.xml 2009-08-14 17:36:10 UTC (rev 17092)
+++ trunk/hibernatetools/docs/reference/en/modules/plugins.xml 2009-08-14 20:01:18 UTC (rev 17093)
@@ -1937,7 +1937,7 @@
</emphasis> in the context menu for any entity (or any entity child node) will also open the HQL editor
with the associated query. If you choose <emphasis>
<property>Hibernate Criteria Editor</property>
- </emphasis> in the context menu, it will open <property>Hibernate Criteria Editor</property> with the associated cretaria.</para>
+ </emphasis> in the context menu, it will open <property>Hibernate Criteria Editor</property> with the associated criteria.</para>
<figure>
<title>Generating Simple Queries</title>
16 years, 4 months
JBoss Tools SVN: r17090 - in trunk/seam/docs/reference/en/images: seam_wizards and 1 other directory.
by jbosstools-commits@lists.jboss.org
Author: chukhutsina
Date: 2009-08-14 12:09:02 -0400 (Fri, 14 Aug 2009)
New Revision: 17090
Modified:
trunk/seam/docs/reference/en/images/crud_database_application/crud_database_application_15.png
trunk/seam/docs/reference/en/images/seam_wizards/seam_wizards_11.png
trunk/seam/docs/reference/en/images/seam_wizards/seam_wizards_14.png
trunk/seam/docs/reference/en/images/seam_wizards/seam_wizards_15.png
trunk/seam/docs/reference/en/images/seam_wizards/seam_wizards_5.png
trunk/seam/docs/reference/en/images/seam_wizards/seam_wizards_8.png
Log:
<html><head><meta name="qrichtext" content="1" /></head><body style="font-size:9pt;font-family:Sans Serif">
<p>https://jira.jboss.org/jira/browse/JBDS-720 -Screens in Seam-Doc were updated.</p>
</body></html>
Modified: trunk/seam/docs/reference/en/images/crud_database_application/crud_database_application_15.png
===================================================================
(Binary files differ)
Modified: trunk/seam/docs/reference/en/images/seam_wizards/seam_wizards_11.png
===================================================================
(Binary files differ)
Modified: trunk/seam/docs/reference/en/images/seam_wizards/seam_wizards_14.png
===================================================================
(Binary files differ)
Modified: trunk/seam/docs/reference/en/images/seam_wizards/seam_wizards_15.png
===================================================================
(Binary files differ)
Modified: trunk/seam/docs/reference/en/images/seam_wizards/seam_wizards_5.png
===================================================================
(Binary files differ)
Modified: trunk/seam/docs/reference/en/images/seam_wizards/seam_wizards_8.png
===================================================================
(Binary files differ)
16 years, 4 months