Author: fbricon
Date: 2012-04-10 05:07:00 -0400 (Tue, 10 Apr 2012)
New Revision: 40110
Added:
trunk/maven/plugins/org.jboss.tools.maven.core/poms/hibernate36X-template.xml
trunk/maven/plugins/org.jboss.tools.maven.core/poms/hibernate41X-template.xml
Modified:
trunk/maven/plugins/org.jboss.tools.maven.core/plugin.properties
trunk/maven/plugins/org.jboss.tools.maven.core/plugin.xml
trunk/maven/plugins/org.jboss.tools.maven.core/poms/hibernate332-template.xml
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/libprov/MavenLibraryProviderInstallOperation.java
trunk/maven/plugins/org.jboss.tools.maven.ui/src/org/jboss/tools/maven/ui/internal/libprov/DependencyEditingSupport.java
Log:
JBIDE-10911: Add new Hibernate 3.6.x and 4.x maven provided libraries
https://issues.jboss.org/browse/JBIDE-10911
Modified: trunk/maven/plugins/org.jboss.tools.maven.core/plugin.properties
===================================================================
--- trunk/maven/plugins/org.jboss.tools.maven.core/plugin.properties 2012-04-10 07:42:08
UTC (rev 40109)
+++ trunk/maven/plugins/org.jboss.tools.maven.core/plugin.properties 2012-04-10 09:07:00
UTC (rev 40110)
@@ -8,6 +8,8 @@
Maven_JSF_1_1_Libraries=Maven JSF 1.1 Libraries
Maven_JSF_2_0_Libraries=Maven JSF 2.0 Libraries
Hibernate_3_3_2_Libraries=Hibernate 3.3.2 Libraries
+Hibernate_3_6_X_Libraries=Hibernate 3.6.10 Libraries
+Hibernate_4_1_X_Libraries=Hibernate 4.1.0 Libraries
Maven_Portlet_1_0_Libraries=Maven Portlet 1.0 Libraries
Maven_Portlet_2_0_Libraries=Maven Portlet 2.0 Libraries
Maven_Portletbridge_2_0_0_ALPHA_Libraries=Maven Portletbridge 2.0.0 ALPHA Libraries
Modified: trunk/maven/plugins/org.jboss.tools.maven.core/plugin.xml
===================================================================
--- trunk/maven/plugins/org.jboss.tools.maven.core/plugin.xml 2012-04-10 07:42:08 UTC (rev
40109)
+++ trunk/maven/plugins/org.jboss.tools.maven.core/plugin.xml 2012-04-10 09:07:00 UTC (rev
40110)
@@ -156,8 +156,58 @@
</enablement>
</provider>
</extension>
-
<extension
point="org.eclipse.jst.common.project.facet.core.libraryProviders">
+ <provider id="hibernate41X-maven-library-provider"
extends="maven-library-provider">
+ <label>%Hibernate_4_1_X_Libraries</label>
+ <param name="template"
value="platform:/plugin/org.jboss.tools.maven.core/poms/hibernate41X-template.xml"/>
+ <enablement>
+ <and>
+ <with variable="projectFacets">
+ <test property="org.jboss.tools.maven.core.projectFacets"
value="jpt.jpa,jboss.m2" forcePluginActivation="true"/>
+ </with>
+ <with variable="requestingProjectFacet">
+ <test
property="org.eclipse.wst.common.project.facet.core.projectFacet"
value="jpt.jpa:2.0" forcePluginActivation="true"/>
+ </with>
+ <with variable="jpaPlatform">
+ <equals value="hibernate2_0"/>
+ </with>
+ </and>
+ </enablement>
+ </provider>
+ </extension>
+ <extension
point="org.eclipse.jst.common.project.facet.core.libraryProviders">
+ <provider id="hibernate36X-maven-library-provider"
extends="maven-library-provider">
+ <label>%Hibernate_3_6_X_Libraries</label>
+ <param name="template"
value="platform:/plugin/org.jboss.tools.maven.core/poms/hibernate36X-template.xml"/>
+ <enablement>
+ <or>
+ <and>
+ <with variable="projectFacets">
+ <test property="org.jboss.tools.maven.core.projectFacets"
value="jpt.jpa,jboss.m2" forcePluginActivation="true"/>
+ </with>
+ <with variable="requestingProjectFacet">
+ <test
property="org.eclipse.wst.common.project.facet.core.projectFacet"
value="jpt.jpa:2.0" forcePluginActivation="true"/>
+ </with>
+ <with variable="jpaPlatform">
+ <equals value="hibernate2_0"/>
+ </with>
+ </and>
+ <and>
+ <with variable="projectFacets">
+ <test property="org.jboss.tools.maven.core.projectFacets"
value="jpt.jpa,jboss.m2" forcePluginActivation="true"/>
+ </with>
+ <with variable="requestingProjectFacet">
+ <test
property="org.eclipse.wst.common.project.facet.core.projectFacet"
value="jpt.jpa:1.0" forcePluginActivation="true"/>
+ </with>
+ <with variable="jpaPlatform">
+ <equals value="hibernate"/>
+ </with>
+ </and>
+ </or>
+ </enablement>
+ </provider>
+ </extension>
+ <extension
point="org.eclipse.jst.common.project.facet.core.libraryProviders">
<provider id="portlet10-maven-library-provider"
extends="maven-library-provider">
<label>%Maven_Portlet_1_0_Libraries</label>
<param name="template"
value="platform:/plugin/org.jboss.tools.maven.core/poms/portlet-template10.xml"/>
Modified: trunk/maven/plugins/org.jboss.tools.maven.core/poms/hibernate332-template.xml
===================================================================
---
trunk/maven/plugins/org.jboss.tools.maven.core/poms/hibernate332-template.xml 2012-04-10
07:42:08 UTC (rev 40109)
+++
trunk/maven/plugins/org.jboss.tools.maven.core/poms/hibernate332-template.xml 2012-04-10
09:07:00 UTC (rev 40110)
@@ -6,35 +6,6 @@
<artifactId>template</artifactId>
<packaging>pom</packaging>
<version>0.0.1-SNAPSHOT</version>
-
- <repositories>
- <repository>
- <id>jboss-public-repository-group</id>
- <name>JBoss Community Public Maven Repository</name>
-
<
url>https://repository.jboss.org/nexus/content/groups/public/</url>
- <layout>default</layout>
- <releases>
- <enabled>true</enabled>
- <updatePolicy>never</updatePolicy>
- </releases>
- <snapshots>
- <enabled>true</enabled>
- <updatePolicy>never</updatePolicy>
- </snapshots>
- </repository>
- <repository>
- <id>repository.jboss.org</id>
- <name>JBoss Repository</name>
- <
url>http://repository.jboss.org/maven2</url>
- </repository>
- <repository>
- <snapshots />
- <id>snapshots.jboss.org</id>
- <name>JBoss Snapshot Repository</name>
- <
url>http://snapshots.jboss.org/maven2</url>
- </repository>
- </repositories>
-
<dependencies>
<dependency>
<groupId>org.hibernate</groupId>
@@ -115,13 +86,16 @@
</exclusion>
</exclusions>
</dependency>
-
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-search</artifactId>
<version>3.1.1.GA</version>
+ <exclusions>
+ <exclusion>
+ <groupId>hsqldb</groupId>
+ <artifactId>hsqldb</artifactId>
+ </exclusion>
+ </exclusions>
</dependency>
-
</dependencies>
-
</project>
\ No newline at end of file
Added: trunk/maven/plugins/org.jboss.tools.maven.core/poms/hibernate36X-template.xml
===================================================================
--- trunk/maven/plugins/org.jboss.tools.maven.core/poms/hibernate36X-template.xml
(rev 0)
+++
trunk/maven/plugins/org.jboss.tools.maven.core/poms/hibernate36X-template.xml 2012-04-10
09:07:00 UTC (rev 40110)
@@ -0,0 +1,116 @@
+<project
xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/maven-v4_0_0.xsd">
+
+ <modelVersion>4.0.0</modelVersion>
+ <groupId>template</groupId>
+ <artifactId>template</artifactId>
+ <packaging>pom</packaging>
+ <version>0.0.1-SNAPSHOT</version>
+
+ <!-- inspired from
https://raw.github.com/jbossas/quickstart/master/hibernate3/pom.xml -->
+ <dependencies>
+ <dependency>
+ <groupId>org.hibernate</groupId>
+ <artifactId>hibernate-core</artifactId>
+ <version>3.6.10.Final</version>
+
+ <!-- Some transitive dependencies of Hibernate 3 are available
+ in JBoss AS 7 as modules, so we don't include them in
WEB-INF/lib, but instead
+ depend on the modules -->
+ <exclusions>
+ <exclusion>
+ <groupId>antlr</groupId>
+ <artifactId>antlr</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>commons-collections</groupId>
+ <artifactId>commons-collections</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>org.slf4j</groupId>
+ <artifactId>slf4j-api</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>dom4j</groupId>
+ <artifactId>dom4j</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>javax.transaction</groupId>
+ <artifactId>jta</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+
+ <!-- Define dependency version of hibernate-entitymanager -->
+ <dependency>
+ <groupId>org.hibernate</groupId>
+ <artifactId>hibernate-entitymanager</artifactId>
+ <version>3.6.10.Final</version>
+ <!-- Some transitive dependencies of Hibernate 3 are available
+ in JBoss AS 7 as modules, so we don't include them in
WEB-INF/lib, but instead
+ depend on the modules -->
+ <exclusions>
+ <exclusion>
+ <groupId>asm</groupId>
+ <artifactId>asm</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>javassist</groupId>
+ <artifactId>javassist</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>org.slf4j</groupId>
+ <artifactId>slf4j-api</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>cglib</groupId>
+ <artifactId>cglib</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+
+ <!-- Define dependency version of hibernate-validator -->
+ <dependency>
+ <groupId>org.hibernate</groupId>
+ <artifactId>hibernate-validator</artifactId>
+ <version>3.1.0.GA</version>
+ <!-- Some transitive dependencies of Hibernate 3 are available
+ in JBoss AS 7 as modules, so we don't include them in
WEB-INF/lib, but instead
+ depend on the modules -->
+ <exclusions>
+ <exclusion>
+ <groupId>org.slf4j</groupId>
+ <artifactId>slf4j-api</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+
+ <!-- Define dependency version of hibernate-commons-annotations -->
+ <dependency>
+ <groupId>org.hibernate</groupId>
+ <artifactId>hibernate-commons-annotations</artifactId>
+ <version>3.2.0.Final</version>
+ <!-- Some transitive dependencies of Hibernate 3 are available
+ in JBoss AS 7 as modules, so we don't include them in
WEB-INF/lib, but instead
+ depend on the modules -->
+ <exclusions>
+ <exclusion>
+ <groupId>org.slf4j</groupId>
+ <artifactId>slf4j-api</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+
+ <dependency>
+ <groupId>org.hibernate</groupId>
+ <artifactId>hibernate-search</artifactId>
+ <version>4.1.0.Final</version>
+ <exclusions>
+ <exclusion>
+ <groupId>org.slf4j</groupId>
+ <artifactId>slf4j-api</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ </dependencies>
+</project>
\ No newline at end of file
Added: trunk/maven/plugins/org.jboss.tools.maven.core/poms/hibernate41X-template.xml
===================================================================
--- trunk/maven/plugins/org.jboss.tools.maven.core/poms/hibernate41X-template.xml
(rev 0)
+++
trunk/maven/plugins/org.jboss.tools.maven.core/poms/hibernate41X-template.xml 2012-04-10
09:07:00 UTC (rev 40110)
@@ -0,0 +1,90 @@
+<project
xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/maven-v4_0_0.xsd">
+
+ <modelVersion>4.0.0</modelVersion>
+ <groupId>template</groupId>
+ <artifactId>template</artifactId>
+ <packaging>pom</packaging>
+ <version>0.0.1-SNAPSHOT</version>
+
+ <dependencyManagement>
+ <dependencies>
+ <dependency>
+ <groupId>org.jboss.bom</groupId>
+ <artifactId>jboss-javaee-6.0-with-hibernate</artifactId>
+ <version>1.0.0.M7</version>
+ <type>pom</type>
+ <scope>import</scope>
+ </dependency>
+ </dependencies>
+ </dependencyManagement>
+
+<dependencies>
+ <!-- Hibernate ORM sub-modules -->
+ <dependency>
+ <groupId>org.hibernate</groupId>
+ <artifactId>hibernate-core</artifactId>
+ <!-- this already part of JDK6 -->
+ <exclusions>
+ <exclusion>
+ <groupId>xml-apis</groupId>
+ <artifactId>xml-apis</artifactId>
+ </exclusion>
+ </exclusions>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.hibernate</groupId>
+ <artifactId>hibernate-entitymanager</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ <!--
+ <dependency>
+ <groupId>org.hibernate</groupId>
+ <artifactId>hibernate-envers</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.hibernate</groupId>
+ <artifactId>hibernate-c3p0</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.hibernate</groupId>
+ <artifactId>hibernate-ehcache</artifactId>
+ </dependency>
+ -->
+ <dependency>
+ <groupId>org.hibernate</groupId>
+ <artifactId>hibernate-validator</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.hibernate</groupId>
+ <artifactId>hibernate-search</artifactId>
+ <version>4.1.0.Final</version>
+ </dependency>
+ <!--
+ <dependency>
+ <groupId>org.hibernate</groupId>
+ <artifactId>hibernate-search-analyzers</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.hibernate</groupId>
+ <artifactId>hibernate-search-engine</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.hibernate</groupId>
+ <artifactId>hibernate-search-orm</artifactId>
+ </dependency>
+ -->
+ <!-- Tools
+ <dependency>
+ <groupId>org.hibernate</groupId>
+ <artifactId>hibernate-validator-annotation-processor</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.hibernate</groupId>
+ <artifactId>hibernate-jpamodelgen</artifactId>
+ </dependency>
+ -->
+</dependencies>
+</project>
\ 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 2012-04-10
07:42:08 UTC (rev 40109)
+++
trunk/maven/plugins/org.jboss.tools.maven.core/src/org/jboss/tools/maven/core/MavenCoreActivator.java 2012-04-10
09:07:00 UTC (rev 40110)
@@ -692,8 +692,7 @@
}
}
- public static void addLibraryProviderOperationConfig(
- LibraryProviderOperationConfig config) {
+ public static void addLibraryProviderOperationConfig(LibraryProviderOperationConfig
config) {
libraryProviderOperationConfigs.add(config);
}
Modified:
trunk/maven/plugins/org.jboss.tools.maven.core/src/org/jboss/tools/maven/core/libprov/MavenLibraryProviderInstallOperation.java
===================================================================
---
trunk/maven/plugins/org.jboss.tools.maven.core/src/org/jboss/tools/maven/core/libprov/MavenLibraryProviderInstallOperation.java 2012-04-10
07:42:08 UTC (rev 40109)
+++
trunk/maven/plugins/org.jboss.tools.maven.core/src/org/jboss/tools/maven/core/libprov/MavenLibraryProviderInstallOperation.java 2012-04-10
09:07:00 UTC (rev 40110)
@@ -17,6 +17,7 @@
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
+import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@@ -29,6 +30,7 @@
import javax.xml.transform.dom.DOMSource;
import javax.xml.transform.stream.StreamResult;
+import org.apache.maven.model.DependencyManagement;
import org.eclipse.core.resources.IFile;
import org.eclipse.core.resources.IProject;
import org.eclipse.core.runtime.CoreException;
@@ -82,8 +84,8 @@
PomResourceImpl resource = loadResource(pom);
Model projectModel = resource.getModel();
Model libraryModel = mavenConfig.getModel();
- MavenCoreActivator.mergeModel(projectModel, libraryModel);
try {
+ MavenCoreActivator.mergeModel(projectModel, libraryModel);
Map<String,String> options = new HashMap<String,String>();
options.put(XMIResource.OPTION_ENCODING, MavenCoreActivator.ENCODING);
resource.save(options);
@@ -115,9 +117,34 @@
if(pomModel.getDescription() != null && pomModel.getDescription().length()
> 0) {
model.setDescription(pomModel.getDescription());
}
- EList<Dependency> pomDependencies = pomModel.getDependencies();
- List<org.apache.maven.model.Dependency> dependencies =
model.getDependencies();
- for (Dependency pomDependency:pomDependencies) {
+
+ if (pomModel.getDependencyManagement() != null &&
pomModel.getDependencyManagement().isSetDependencies()) {
+ model.setDependencyManagement(new DependencyManagement());
+
model.getDependencyManagement().setDependencies(convertDependencies(pomModel.getDependencyManagement().getDependencies()));
+ }
+ model.setDependencies(convertDependencies(pomModel.getDependencies()));
+
+ EList<Repository> pomRepositories = pomModel.getRepositories();
+ List<org.apache.maven.model.Repository> repositories =
model.getRepositories();
+ for (Repository pomRepository:pomRepositories) {
+ org.apache.maven.model.Repository repository = new
org.apache.maven.model.Repository();
+ repository.setId(pomRepository.getId());
+ repository.setLayout(pomRepository.getLayout());
+ repository.setName(pomRepository.getName());
+ RepositoryPolicy pomReleases = pomRepository.getReleases();
+ repository.setReleases(getRepositoryPolicy(pomReleases));
+ RepositoryPolicy pomSnapshots = pomRepository.getSnapshots();
+ repository.setSnapshots(getRepositoryPolicy(pomSnapshots));
+ repository.setLayout(pomRepository.getLayout());
+ repository.setUrl(pomRepository.getUrl());
+ repositories.add(repository);
+ }
+ createMavenModel(file, model);
+ }
+
+ private List<org.apache.maven.model.Dependency>
convertDependencies(EList<Dependency> pomDependencies) {
+ List<org.apache.maven.model.Dependency> dependencies = new
ArrayList<org.apache.maven.model.Dependency>(pomDependencies.size());
+ for (Dependency pomDependency:pomDependencies) {
org.apache.maven.model.Dependency dependency = new
org.apache.maven.model.Dependency();
dependency.setArtifactId(pomDependency.getArtifactId());
dependency.setGroupId(pomDependency.getGroupId());
@@ -137,22 +164,7 @@
}
dependencies.add(dependency);
}
- EList<Repository> pomRepositories = pomModel.getRepositories();
- List<org.apache.maven.model.Repository> repositories =
model.getRepositories();
- for (Repository pomRepository:pomRepositories) {
- org.apache.maven.model.Repository repository = new
org.apache.maven.model.Repository();
- repository.setId(pomRepository.getId());
- repository.setLayout(pomRepository.getLayout());
- repository.setName(pomRepository.getName());
- RepositoryPolicy pomReleases = pomRepository.getReleases();
- repository.setReleases(getRepositoryPolicy(pomReleases));
- RepositoryPolicy pomSnapshots = pomRepository.getSnapshots();
- repository.setSnapshots(getRepositoryPolicy(pomSnapshots));
- repository.setLayout(pomRepository.getLayout());
- repository.setUrl(pomRepository.getUrl());
- repositories.add(repository);
- }
- createMavenModel(file, model);
+ return dependencies;
}
public void createMavenModel(File file, org.apache.maven.model.Model model) throws
CoreException {
Modified:
trunk/maven/plugins/org.jboss.tools.maven.ui/src/org/jboss/tools/maven/ui/internal/libprov/DependencyEditingSupport.java
===================================================================
---
trunk/maven/plugins/org.jboss.tools.maven.ui/src/org/jboss/tools/maven/ui/internal/libprov/DependencyEditingSupport.java 2012-04-10
07:42:08 UTC (rev 40109)
+++
trunk/maven/plugins/org.jboss.tools.maven.ui/src/org/jboss/tools/maven/ui/internal/libprov/DependencyEditingSupport.java 2012-04-10
09:07:00 UTC (rev 40110)
@@ -131,13 +131,13 @@
dependency.setVersion(valueString);
break;
case 3:
- if (intValue > scopes.length) {
+ if (intValue < 0 || intValue > scopes.length) {
intValue = 0;
}
dependency.setScope(scopes[intValue]);
break;
case 4:
- if (intValue > types.length) {
+ if (intValue < 0 || intValue > types.length) {
intValue = 0;
}
dependency.setType(types[intValue]);