[jbosstools-commits] JBoss Tools SVN: r30772 - in trunk/hibernatetools/plugins/org.jboss.tools.hibernate.jpt.core: META-INF and 2 other directories.
jbosstools-commits at lists.jboss.org
jbosstools-commits at lists.jboss.org
Fri Apr 22 09:03:21 EDT 2011
Author: dgeraskov
Date: 2011-04-22 09:03:21 -0400 (Fri, 22 Apr 2011)
New Revision: 30772
Added:
trunk/hibernatetools/plugins/org.jboss.tools.hibernate.jpt.core/src/org/jboss/tools/hibernate/jpt/core/internal/libval/
trunk/hibernatetools/plugins/org.jboss.tools.hibernate.jpt.core/src/org/jboss/tools/hibernate/jpt/core/internal/libval/HibernateUserLibraryValidator.java
Modified:
trunk/hibernatetools/plugins/org.jboss.tools.hibernate.jpt.core/META-INF/MANIFEST.MF
trunk/hibernatetools/plugins/org.jboss.tools.hibernate.jpt.core/plugin.xml
Log:
https://issues.jboss.org/browse/JBIDE-8677
Use Library validator instead of custom Library Provider
Modified: trunk/hibernatetools/plugins/org.jboss.tools.hibernate.jpt.core/META-INF/MANIFEST.MF
===================================================================
--- trunk/hibernatetools/plugins/org.jboss.tools.hibernate.jpt.core/META-INF/MANIFEST.MF 2011-04-22 01:49:27 UTC (rev 30771)
+++ trunk/hibernatetools/plugins/org.jboss.tools.hibernate.jpt.core/META-INF/MANIFEST.MF 2011-04-22 13:03:21 UTC (rev 30772)
@@ -18,7 +18,8 @@
org.eclipse.jpt.common.core,
org.eclipse.jpt.jpa.db,
org.eclipse.jpt.jpa.core,
- org.eclipse.text;bundle-version="3.5.100"
+ org.eclipse.text;bundle-version="3.5.100",
+ org.eclipse.jst.j2ee;bundle-version="1.1.500"
Bundle-RequiredExecutionEnvironment: JavaSE-1.6
Bundle-Vendor: %Bundle-Vendor.0
Export-Package: org.jboss.tools.hibernate.jpt.core.internal,
Modified: trunk/hibernatetools/plugins/org.jboss.tools.hibernate.jpt.core/plugin.xml
===================================================================
--- trunk/hibernatetools/plugins/org.jboss.tools.hibernate.jpt.core/plugin.xml 2011-04-22 01:49:27 UTC (rev 30771)
+++ trunk/hibernatetools/plugins/org.jboss.tools.hibernate.jpt.core/plugin.xml 2011-04-22 13:03:21 UTC (rev 30772)
@@ -3,10 +3,16 @@
<plugin>
<extension id="org.jboss.tools.hibernate.jpt.core"
point="org.eclipse.jpt.jpa.core.jpaPlatforms">
+
+ <jpaPlatformGroup
+ id="hibernate.group"
+ label="Hibernate"/>
+
<jpaPlatform
default="false"
factoryClass="org.jboss.tools.hibernate.jpt.core.internal.HibernateJpaPlatformFactory"
id="hibernate"
+ group="hibernate.group"
jpaFacetVersion="1.0"
label="Hibernate (JPA 1.x)">
</jpaPlatform>
@@ -14,9 +20,11 @@
default="false"
factoryClass="org.jboss.tools.hibernate.jpt.core.internal.jpa2.HibernateJpa2_0PlatformFactory"
id="hibernate2_0"
+ group="hibernate.group"
jpaFacetVersion="2.0"
label="Hibernate (JPA 2.x)">
- </jpaPlatform>
+ </jpaPlatform>
+
</extension>
<extension
point="org.eclipse.wst.common.project.facet.core.listeners">
@@ -25,6 +33,26 @@
eventTypes="POST_INSTALL">
</listener>
</extension>
+
+ <extension
+ point="org.eclipse.jpt.common.core.libraryValidators">
+
+ <libraryValidator
+ id="hibernateLibraryValidator"
+ class="org.jboss.tools.hibernate.jpt.core.internal.libval.HibernateUserLibraryValidator">
+ <enablement>
+ <and>
+ <with variable="libraryProvider">
+ <test property="org.eclipse.jpt.common.core.extendsId" value="jpa-user-library-provider"/>
+ </with>
+ <with variable="config">
+ <test property="org.eclipse.jpt.jpa.core.jpaPlatformGroup" value="hibernate.group"/>
+ </with>
+ </and>
+ </enablement>
+ </libraryValidator>
+
+ </extension>
<!--extension
point="org.eclipse.jst.common.project.facet.core.libraryProviders">
Added: trunk/hibernatetools/plugins/org.jboss.tools.hibernate.jpt.core/src/org/jboss/tools/hibernate/jpt/core/internal/libval/HibernateUserLibraryValidator.java
===================================================================
--- trunk/hibernatetools/plugins/org.jboss.tools.hibernate.jpt.core/src/org/jboss/tools/hibernate/jpt/core/internal/libval/HibernateUserLibraryValidator.java (rev 0)
+++ trunk/hibernatetools/plugins/org.jboss.tools.hibernate.jpt.core/src/org/jboss/tools/hibernate/jpt/core/internal/libval/HibernateUserLibraryValidator.java 2011-04-22 13:03:21 UTC (rev 30772)
@@ -0,0 +1,49 @@
+/*******************************************************************************
+ * Copyright (c) 2011 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
+ *
+ * Contributor:
+ * Red Hat, Inc. - initial API and implementation
+ ******************************************************************************/
+package org.jboss.tools.hibernate.jpt.core.internal.libval;
+
+import java.util.HashSet;
+import java.util.Set;
+
+import org.eclipse.core.runtime.IPath;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.jdt.core.IClasspathEntry;
+import org.eclipse.jpt.common.core.internal.libval.LibValUtil;
+import org.eclipse.jpt.common.core.libprov.JptLibraryProviderInstallOperationConfig;
+import org.eclipse.jpt.common.core.libval.LibraryValidator;
+import org.eclipse.jpt.common.utility.internal.iterables.TransformationIterable;
+import org.eclipse.jpt.jpa.core.internal.libprov.JpaUserLibraryProviderInstallOperationConfig;
+
+/**
+ * @author Dmitry Geraskov
+ *
+ */
+public class HibernateUserLibraryValidator implements LibraryValidator {
+
+ @Override
+ public IStatus validate(JptLibraryProviderInstallOperationConfig config) {
+ JpaUserLibraryProviderInstallOperationConfig jpaConfig = (JpaUserLibraryProviderInstallOperationConfig) config;
+ Set<String> classNames = new HashSet<String>();
+ //classNames.add("javax.persistence.Entity"); //$NON-NLS-1$
+ classNames.add("org.hibernate.SessionFactory");//$NON-NLS-1$
+
+ Iterable<IPath> libraryPaths = new TransformationIterable<IClasspathEntry, IPath>(
+ jpaConfig.resolve()) {
+ @Override
+ protected IPath transform(IClasspathEntry o) {
+ return o.getPath();
+ }
+ };
+
+ return LibValUtil.validate(libraryPaths, classNames);
+ }
+
+}
More information about the jbosstools-commits
mailing list