Hibernate SVN: r17866 - in validator/trunk: hibernate-validator and 3 other directories.
by hibernate-commits@lists.jboss.org
Author: hardy.ferentschik
Date: 2009-10-28 08:41:56 -0400 (Wed, 28 Oct 2009)
New Revision: 17866
Modified:
validator/trunk/hibernate-validator-archetype/pom.xml
validator/trunk/hibernate-validator-legacy/pom.xml
validator/trunk/hibernate-validator-tck-runner/pom.xml
validator/trunk/hibernate-validator/pom.xml
validator/trunk/pom.xml
Log:
[maven-release-plugin] prepare for next development iteration
Modified: validator/trunk/hibernate-validator/pom.xml
===================================================================
--- validator/trunk/hibernate-validator/pom.xml 2009-10-28 12:41:44 UTC (rev 17865)
+++ validator/trunk/hibernate-validator/pom.xml 2009-10-28 12:41:56 UTC (rev 17866)
@@ -2,7 +2,7 @@
<parent>
<artifactId>hibernate-validator-parent</artifactId>
<groupId>org.hibernate</groupId>
- <version>4.0.1.GA</version>
+ <version>4.0.2-SNAPSHOT</version>
<relativePath>../pom.xml</relativePath>
</parent>
<modelVersion>4.0.0</modelVersion>
Modified: validator/trunk/hibernate-validator-archetype/pom.xml
===================================================================
--- validator/trunk/hibernate-validator-archetype/pom.xml 2009-10-28 12:41:44 UTC (rev 17865)
+++ validator/trunk/hibernate-validator-archetype/pom.xml 2009-10-28 12:41:56 UTC (rev 17866)
@@ -4,7 +4,7 @@
<parent>
<artifactId>hibernate-validator-parent</artifactId>
<groupId>org.hibernate</groupId>
- <version>4.0.1.GA</version>
+ <version>4.0.2-SNAPSHOT</version>
<relativePath>../pom.xml</relativePath>
</parent>
<groupId>org.hibernate</groupId>
Modified: validator/trunk/hibernate-validator-legacy/pom.xml
===================================================================
--- validator/trunk/hibernate-validator-legacy/pom.xml 2009-10-28 12:41:44 UTC (rev 17865)
+++ validator/trunk/hibernate-validator-legacy/pom.xml 2009-10-28 12:41:56 UTC (rev 17866)
@@ -4,13 +4,13 @@
<parent>
<artifactId>hibernate-validator-parent</artifactId>
<groupId>org.hibernate</groupId>
- <version>4.0.1.GA</version>
+ <version>4.0.2-SNAPSHOT</version>
<relativePath>../pom.xml</relativePath>
</parent>
<artifactId>hibernate-validator-legacy</artifactId>
<packaging>jar</packaging>
<name>Hibernate Validator Legacy</name>
- <version>4.0.1.GA</version>
+ <version>3.1.0.GA</version>
<url>http://validator.hibernate.org</url>
<licenses>
<license>
Modified: validator/trunk/hibernate-validator-tck-runner/pom.xml
===================================================================
--- validator/trunk/hibernate-validator-tck-runner/pom.xml 2009-10-28 12:41:44 UTC (rev 17865)
+++ validator/trunk/hibernate-validator-tck-runner/pom.xml 2009-10-28 12:41:56 UTC (rev 17866)
@@ -2,7 +2,7 @@
<parent>
<artifactId>hibernate-validator-parent</artifactId>
<groupId>org.hibernate</groupId>
- <version>4.0.1.GA</version>
+ <version>4.0.2-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>hibernate-validator-tck-runner</artifactId>
Modified: validator/trunk/pom.xml
===================================================================
--- validator/trunk/pom.xml 2009-10-28 12:41:44 UTC (rev 17865)
+++ validator/trunk/pom.xml 2009-10-28 12:41:56 UTC (rev 17866)
@@ -3,7 +3,7 @@
<groupId>org.hibernate</groupId>
<artifactId>hibernate-validator-parent</artifactId>
<packaging>pom</packaging>
- <version>4.0.1.GA</version>
+ <version>4.0.2-SNAPSHOT</version>
<name>Hibernate Validator Parent</name>
<url>http://validator.hibernate.org</url>
@@ -170,8 +170,8 @@
</licenses>
<scm>
- <connection>scm:svn:https://svn.jboss.org/repos/hibernate/validator/tags/v4_0_1_GA</connection>
- <url>http://fisheye.jboss.org/browse/Hibernate/validator/tags/v4_0_1_GA</url>
+ <connection>scm:svn:https://svn.jboss.org/repos/hibernate/validator/trunk</connection>
+ <url>http://fisheye.jboss.org/browse/Hibernate/validator/trunk</url>
</scm>
<distributionManagement>
15 years, 4 months
Hibernate SVN: r17865 - validator/tags.
by hibernate-commits@lists.jboss.org
Author: hardy.ferentschik
Date: 2009-10-28 08:41:44 -0400 (Wed, 28 Oct 2009)
New Revision: 17865
Added:
validator/tags/v4_0_1_GA/
Log:
[maven-scm] copy for tag v4_0_1_GA
Copied: validator/tags/v4_0_1_GA (from rev 17864, validator/trunk)
15 years, 4 months
Hibernate SVN: r17864 - in validator/trunk: hibernate-validator and 3 other directories.
by hibernate-commits@lists.jboss.org
Author: hardy.ferentschik
Date: 2009-10-28 08:41:25 -0400 (Wed, 28 Oct 2009)
New Revision: 17864
Modified:
validator/trunk/hibernate-validator-archetype/pom.xml
validator/trunk/hibernate-validator-legacy/pom.xml
validator/trunk/hibernate-validator-tck-runner/pom.xml
validator/trunk/hibernate-validator/pom.xml
validator/trunk/pom.xml
Log:
[maven-release-plugin] prepare release v4_0_1_GA
Modified: validator/trunk/hibernate-validator/pom.xml
===================================================================
--- validator/trunk/hibernate-validator/pom.xml 2009-10-28 12:38:39 UTC (rev 17863)
+++ validator/trunk/hibernate-validator/pom.xml 2009-10-28 12:41:25 UTC (rev 17864)
@@ -2,7 +2,7 @@
<parent>
<artifactId>hibernate-validator-parent</artifactId>
<groupId>org.hibernate</groupId>
- <version>4.0.1.GA-SNAPSHOT</version>
+ <version>4.0.1.GA</version>
<relativePath>../pom.xml</relativePath>
</parent>
<modelVersion>4.0.0</modelVersion>
Modified: validator/trunk/hibernate-validator-archetype/pom.xml
===================================================================
--- validator/trunk/hibernate-validator-archetype/pom.xml 2009-10-28 12:38:39 UTC (rev 17863)
+++ validator/trunk/hibernate-validator-archetype/pom.xml 2009-10-28 12:41:25 UTC (rev 17864)
@@ -4,7 +4,7 @@
<parent>
<artifactId>hibernate-validator-parent</artifactId>
<groupId>org.hibernate</groupId>
- <version>4.0.1.GA-SNAPSHOT</version>
+ <version>4.0.1.GA</version>
<relativePath>../pom.xml</relativePath>
</parent>
<groupId>org.hibernate</groupId>
Modified: validator/trunk/hibernate-validator-legacy/pom.xml
===================================================================
--- validator/trunk/hibernate-validator-legacy/pom.xml 2009-10-28 12:38:39 UTC (rev 17863)
+++ validator/trunk/hibernate-validator-legacy/pom.xml 2009-10-28 12:41:25 UTC (rev 17864)
@@ -4,13 +4,13 @@
<parent>
<artifactId>hibernate-validator-parent</artifactId>
<groupId>org.hibernate</groupId>
- <version>4.0.1.GA-SNAPSHOT</version>
+ <version>4.0.1.GA</version>
<relativePath>../pom.xml</relativePath>
</parent>
<artifactId>hibernate-validator-legacy</artifactId>
<packaging>jar</packaging>
<name>Hibernate Validator Legacy</name>
- <version>3.1.0.GA</version>
+ <version>4.0.1.GA</version>
<url>http://validator.hibernate.org</url>
<licenses>
<license>
Modified: validator/trunk/hibernate-validator-tck-runner/pom.xml
===================================================================
--- validator/trunk/hibernate-validator-tck-runner/pom.xml 2009-10-28 12:38:39 UTC (rev 17863)
+++ validator/trunk/hibernate-validator-tck-runner/pom.xml 2009-10-28 12:41:25 UTC (rev 17864)
@@ -2,7 +2,7 @@
<parent>
<artifactId>hibernate-validator-parent</artifactId>
<groupId>org.hibernate</groupId>
- <version>4.0.1.GA-SNAPSHOT</version>
+ <version>4.0.1.GA</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>hibernate-validator-tck-runner</artifactId>
Modified: validator/trunk/pom.xml
===================================================================
--- validator/trunk/pom.xml 2009-10-28 12:38:39 UTC (rev 17863)
+++ validator/trunk/pom.xml 2009-10-28 12:41:25 UTC (rev 17864)
@@ -3,7 +3,7 @@
<groupId>org.hibernate</groupId>
<artifactId>hibernate-validator-parent</artifactId>
<packaging>pom</packaging>
- <version>4.0.1.GA-SNAPSHOT</version>
+ <version>4.0.1.GA</version>
<name>Hibernate Validator Parent</name>
<url>http://validator.hibernate.org</url>
@@ -170,8 +170,8 @@
</licenses>
<scm>
- <connection>scm:svn:https://svn.jboss.org/repos/hibernate/validator/trunk</connection>
- <url>http://fisheye.jboss.org/browse/Hibernate/validator/trunk</url>
+ <connection>scm:svn:https://svn.jboss.org/repos/hibernate/validator/tags/v4_0_1_GA</connection>
+ <url>http://fisheye.jboss.org/browse/Hibernate/validator/tags/v4_0_1_GA</url>
</scm>
<distributionManagement>
15 years, 4 months
Hibernate SVN: r17863 - in validator/trunk: hibernate-validator-archetype and 2 other directories.
by hibernate-commits@lists.jboss.org
Author: hardy.ferentschik
Date: 2009-10-28 08:38:39 -0400 (Wed, 28 Oct 2009)
New Revision: 17863
Modified:
validator/trunk/hibernate-validator-archetype/pom.xml
validator/trunk/hibernate-validator-legacy/pom.xml
validator/trunk/hibernate-validator-tck-runner/pom.xml
validator/trunk/hibernate-validator/pom.xml
Log:
updated pom version
Modified: validator/trunk/hibernate-validator/pom.xml
===================================================================
--- validator/trunk/hibernate-validator/pom.xml 2009-10-28 12:31:36 UTC (rev 17862)
+++ validator/trunk/hibernate-validator/pom.xml 2009-10-28 12:38:39 UTC (rev 17863)
@@ -2,7 +2,7 @@
<parent>
<artifactId>hibernate-validator-parent</artifactId>
<groupId>org.hibernate</groupId>
- <version>4.0.1-SNAPSHOT</version>
+ <version>4.0.1.GA-SNAPSHOT</version>
<relativePath>../pom.xml</relativePath>
</parent>
<modelVersion>4.0.0</modelVersion>
Modified: validator/trunk/hibernate-validator-archetype/pom.xml
===================================================================
--- validator/trunk/hibernate-validator-archetype/pom.xml 2009-10-28 12:31:36 UTC (rev 17862)
+++ validator/trunk/hibernate-validator-archetype/pom.xml 2009-10-28 12:38:39 UTC (rev 17863)
@@ -4,7 +4,7 @@
<parent>
<artifactId>hibernate-validator-parent</artifactId>
<groupId>org.hibernate</groupId>
- <version>4.0.1-SNAPSHOT</version>
+ <version>4.0.1.GA-SNAPSHOT</version>
<relativePath>../pom.xml</relativePath>
</parent>
<groupId>org.hibernate</groupId>
Modified: validator/trunk/hibernate-validator-legacy/pom.xml
===================================================================
--- validator/trunk/hibernate-validator-legacy/pom.xml 2009-10-28 12:31:36 UTC (rev 17862)
+++ validator/trunk/hibernate-validator-legacy/pom.xml 2009-10-28 12:38:39 UTC (rev 17863)
@@ -4,7 +4,7 @@
<parent>
<artifactId>hibernate-validator-parent</artifactId>
<groupId>org.hibernate</groupId>
- <version>4.0.1-SNAPSHOT</version>
+ <version>4.0.1.GA-SNAPSHOT</version>
<relativePath>../pom.xml</relativePath>
</parent>
<artifactId>hibernate-validator-legacy</artifactId>
Modified: validator/trunk/hibernate-validator-tck-runner/pom.xml
===================================================================
--- validator/trunk/hibernate-validator-tck-runner/pom.xml 2009-10-28 12:31:36 UTC (rev 17862)
+++ validator/trunk/hibernate-validator-tck-runner/pom.xml 2009-10-28 12:38:39 UTC (rev 17863)
@@ -2,7 +2,7 @@
<parent>
<artifactId>hibernate-validator-parent</artifactId>
<groupId>org.hibernate</groupId>
- <version>4.0.1-SNAPSHOT</version>
+ <version>4.0.1.GA-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>hibernate-validator-tck-runner</artifactId>
15 years, 4 months
Hibernate SVN: r17861 - validator/trunk/hibernate-validator/src/test/java/org/hibernate/validator/xml.
by hibernate-commits@lists.jboss.org
Author: hardy.ferentschik
Date: 2009-10-28 08:15:44 -0400 (Wed, 28 Oct 2009)
New Revision: 17861
Modified:
validator/trunk/hibernate-validator/src/test/java/org/hibernate/validator/xml/MyInterface.java
validator/trunk/hibernate-validator/src/test/java/org/hibernate/validator/xml/MyInterfaceImpl.java
Log:
Enabled svn keyword substitution
Property changes on: validator/trunk/hibernate-validator/src/test/java/org/hibernate/validator/xml/MyInterface.java
___________________________________________________________________
Name: svn:keywords
+ Id
Property changes on: validator/trunk/hibernate-validator/src/test/java/org/hibernate/validator/xml/MyInterfaceImpl.java
___________________________________________________________________
Name: svn:keywords
+ Id
15 years, 4 months
Hibernate SVN: r17860 - in validator/trunk/hibernate-validator/src: main/java/org/hibernate/validator/metadata and 2 other directories.
by hibernate-commits@lists.jboss.org
Author: hardy.ferentschik
Date: 2009-10-28 08:14:31 -0400 (Wed, 28 Oct 2009)
New Revision: 17860
Added:
validator/trunk/hibernate-validator/src/test/java/org/hibernate/validator/xml/MyInterface.java
validator/trunk/hibernate-validator/src/test/java/org/hibernate/validator/xml/MyInterfaceImpl.java
validator/trunk/hibernate-validator/src/test/resources/org/hibernate/validator/xml/my-interface-impl-mapping.xml
validator/trunk/hibernate-validator/src/test/resources/org/hibernate/validator/xml/my-interface-mapping.xml
Modified:
validator/trunk/hibernate-validator/src/main/java/org/hibernate/validator/engine/ValidatorFactoryImpl.java
validator/trunk/hibernate-validator/src/main/java/org/hibernate/validator/engine/ValidatorImpl.java
validator/trunk/hibernate-validator/src/main/java/org/hibernate/validator/metadata/BeanMetaDataImpl.java
validator/trunk/hibernate-validator/src/test/java/org/hibernate/validator/xml/XmlMappingTest.java
Log:
HV-262
When building the metadata for a class we have to check the bean meta cache as well, since it could contain configuration for beans which are only mapped in xml
Modified: validator/trunk/hibernate-validator/src/main/java/org/hibernate/validator/engine/ValidatorFactoryImpl.java
===================================================================
--- validator/trunk/hibernate-validator/src/main/java/org/hibernate/validator/engine/ValidatorFactoryImpl.java 2009-10-28 10:57:21 UTC (rev 17859)
+++ validator/trunk/hibernate-validator/src/main/java/org/hibernate/validator/engine/ValidatorFactoryImpl.java 2009-10-28 12:14:31 UTC (rev 17860)
@@ -107,7 +107,7 @@
@SuppressWarnings("unchecked")
Class<T> beanClass = ( Class<T> ) clazz;
BeanMetaDataImpl<T> metaData = new BeanMetaDataImpl<T>(
- beanClass, constraintHelper, annotationIgnores
+ beanClass, constraintHelper, annotationIgnores, beanMetaDataCache
);
List<Class<?>> classes = new ArrayList<Class<?>>();
Modified: validator/trunk/hibernate-validator/src/main/java/org/hibernate/validator/engine/ValidatorImpl.java
===================================================================
--- validator/trunk/hibernate-validator/src/main/java/org/hibernate/validator/engine/ValidatorImpl.java 2009-10-28 10:57:21 UTC (rev 17859)
+++ validator/trunk/hibernate-validator/src/main/java/org/hibernate/validator/engine/ValidatorImpl.java 2009-10-28 12:14:31 UTC (rev 17860)
@@ -732,7 +732,7 @@
private <U> BeanMetaData<U> getBeanMetaData(Class<U> beanClass) {
BeanMetaDataImpl<U> beanMetaData = beanMetaDataCache.getBeanMetaData( beanClass );
if ( beanMetaData == null ) {
- beanMetaData = new BeanMetaDataImpl<U>( beanClass, constraintHelper );
+ beanMetaData = new BeanMetaDataImpl<U>( beanClass, constraintHelper, beanMetaDataCache );
beanMetaDataCache.addBeanMetaData( beanClass, beanMetaData );
}
return beanMetaData;
Modified: validator/trunk/hibernate-validator/src/main/java/org/hibernate/validator/metadata/BeanMetaDataImpl.java
===================================================================
--- validator/trunk/hibernate-validator/src/main/java/org/hibernate/validator/metadata/BeanMetaDataImpl.java 2009-10-28 10:57:21 UTC (rev 17859)
+++ validator/trunk/hibernate-validator/src/main/java/org/hibernate/validator/metadata/BeanMetaDataImpl.java 2009-10-28 12:14:31 UTC (rev 17860)
@@ -102,18 +102,19 @@
// Used to avoid ReflectionHelper#containsMembe which is slow
private final Set<String> propertyNames = new HashSet<String>( 30 );
- public BeanMetaDataImpl(Class<T> beanClass, ConstraintHelper constraintHelper) {
+ public BeanMetaDataImpl(Class<T> beanClass, ConstraintHelper constraintHelper, BeanMetaDataCache beanMetaDataCache) {
this(
beanClass,
constraintHelper,
- new AnnotationIgnores()
+ new AnnotationIgnores(),
+ beanMetaDataCache
);
}
- public BeanMetaDataImpl(Class<T> beanClass, ConstraintHelper constraintHelper, AnnotationIgnores annotationIgnores) {
+ public BeanMetaDataImpl(Class<T> beanClass, ConstraintHelper constraintHelper, AnnotationIgnores annotationIgnores, BeanMetaDataCache beanMetaDataCache) {
this.beanClass = beanClass;
this.constraintHelper = constraintHelper;
- createMetaData( annotationIgnores );
+ createMetaData( annotationIgnores, beanMetaDataCache );
}
public Class<T> getBeanClass() {
@@ -225,22 +226,23 @@
* Create bean descriptor, find all classes/subclasses/interfaces which have to be taken in consideration
* for this validator and create meta data.
*
- * @param annotationIgnores Data structure keeping track on which annotation should be ignored.
+ * @param annotationIgnores Data structure keeping track on which annotation should be ignored
+ * @param beanMetaDataCache The bean meta data cache
*/
- private void createMetaData(AnnotationIgnores annotationIgnores) {
+ private void createMetaData(AnnotationIgnores annotationIgnores, BeanMetaDataCache beanMetaDataCache) {
beanDescriptor = new BeanDescriptorImpl<T>( this );
initDefaultGroupSequence();
List<Class<?>> classes = new ArrayList<Class<?>>();
ReflectionHelper.computeClassHierarchy( beanClass, classes );
for ( Class<?> current : classes ) {
- initClass( current, annotationIgnores );
+ initClass( current, annotationIgnores, beanMetaDataCache );
}
}
- private void initClass(Class<?> clazz, AnnotationIgnores annotationIgnores) {
- initClassConstraints( clazz, annotationIgnores );
- initMethodConstraints( clazz, annotationIgnores );
- initFieldConstraints( clazz, annotationIgnores );
+ private void initClass(Class<?> clazz, AnnotationIgnores annotationIgnores, BeanMetaDataCache beanMetaDataCache) {
+ initClassConstraints( clazz, annotationIgnores, beanMetaDataCache );
+ initMethodConstraints( clazz, annotationIgnores, beanMetaDataCache );
+ initFieldConstraints( clazz, annotationIgnores, beanMetaDataCache );
}
/**
@@ -259,7 +261,7 @@
setDefaultGroupSequence( groupSequence );
}
- private void initFieldConstraints(Class<?> clazz, AnnotationIgnores annotationIgnores) {
+ private void initFieldConstraints(Class<?> clazz, AnnotationIgnores annotationIgnores, BeanMetaDataCache beanMetaDataCache) {
GetDeclaredFields action = GetDeclaredFields.action( clazz );
final Field[] fields;
if ( System.getSecurityManager() != null ) {
@@ -280,14 +282,32 @@
continue;
}
- List<ConstraintDescriptorImpl<?>> fieldMetaData = findConstraints( field, ElementType.FIELD );
+ // HV-262
+ BeanMetaDataImpl<?> cachedMetaData = beanMetaDataCache.getBeanMetaData( clazz );
+ List<ConstraintDescriptorImpl<?>> fieldMetaData;
+ boolean cachedFieldIsCascaded = false;
+ if ( cachedMetaData != null ) {
+ fieldMetaData = new ArrayList<ConstraintDescriptorImpl<?>>();
+ cachedFieldIsCascaded = cachedMetaData.getCascadedMembers().contains( field );
+ for ( MetaConstraint<?, ?> metaConstraint : cachedMetaData.getMetaConstraintsAsMap().get( clazz ) ) {
+ ConstraintDescriptorImpl<?> descriptor = metaConstraint.getDescriptor();
+ if ( descriptor.getElementType() == ElementType.FIELD
+ && metaConstraint.getPropertyName().equals( ReflectionHelper.getPropertyName( field ) ) ) {
+ fieldMetaData.add( descriptor );
+ }
+ }
+ }
+ else {
+ fieldMetaData = findConstraints( field, ElementType.FIELD );
+ }
+
for ( ConstraintDescriptorImpl<?> constraintDescription : fieldMetaData ) {
setAccessibility( field );
MetaConstraint<T, ?> metaConstraint = createMetaConstraint( field, constraintDescription );
addMetaConstraint( clazz, metaConstraint );
}
- if ( field.isAnnotationPresent( Valid.class ) ) {
+ if ( cachedFieldIsCascaded || field.isAnnotationPresent( Valid.class ) ) {
addCascadedMember( field );
}
}
@@ -310,7 +330,7 @@
}
}
- private void initMethodConstraints(Class<?> clazz, AnnotationIgnores annotationIgnores) {
+ private void initMethodConstraints(Class<?> clazz, AnnotationIgnores annotationIgnores, BeanMetaDataCache beanMetaDataCache) {
GetDeclaredMethods action = GetDeclaredMethods.action( clazz );
final Method[] declaredMethods;
if ( System.getSecurityManager() != null ) {
@@ -332,13 +352,32 @@
continue;
}
- List<ConstraintDescriptorImpl<?>> methodMetaData = findConstraints( method, ElementType.METHOD );
+ // HV-262
+ BeanMetaDataImpl<?> cachedMetaData = beanMetaDataCache.getBeanMetaData( clazz );
+ List<ConstraintDescriptorImpl<?>> methodMetaData;
+ boolean cachedMethodIsCascaded = false;
+ if ( cachedMetaData != null ) {
+ cachedMethodIsCascaded = cachedMetaData.getCascadedMembers().contains( method );
+ methodMetaData = new ArrayList<ConstraintDescriptorImpl<?>>();
+ for ( MetaConstraint<?, ?> metaConstraint : cachedMetaData.getMetaConstraintsAsMap().get( clazz ) ) {
+ ConstraintDescriptorImpl<?> descriptor = metaConstraint.getDescriptor();
+ if ( descriptor.getElementType() == ElementType.METHOD
+ && metaConstraint.getPropertyName().equals( ReflectionHelper.getPropertyName( method ) ) ) {
+ methodMetaData.add( descriptor );
+ }
+ }
+ }
+ else {
+ methodMetaData = findConstraints( method, ElementType.METHOD );
+ }
+
for ( ConstraintDescriptorImpl<?> constraintDescription : methodMetaData ) {
setAccessibility( method );
MetaConstraint<T, ?> metaConstraint = createMetaConstraint( method, constraintDescription );
addMetaConstraint( clazz, metaConstraint );
}
- if ( method.isAnnotationPresent( Valid.class ) ) {
+
+ if ( cachedMethodIsCascaded || method.isAnnotationPresent( Valid.class ) ) {
addCascadedMember( method );
}
}
@@ -365,12 +404,28 @@
return ( ( AnnotatedElement ) member ).isAnnotationPresent( Valid.class );
}
- private void initClassConstraints(Class<?> clazz, AnnotationIgnores annotationIgnores) {
+ private void initClassConstraints(Class<?> clazz, AnnotationIgnores annotationIgnores, BeanMetaDataCache beanMetaDataCache) {
if ( annotationIgnores.isIgnoreAnnotations( clazz ) ) {
return;
}
- List<ConstraintDescriptorImpl<?>> classMetadata = findClassLevelConstraints( clazz );
- for ( ConstraintDescriptorImpl<?> constraintDescription : classMetadata ) {
+
+ // HV-262
+ BeanMetaDataImpl<?> cachedMetaData = beanMetaDataCache.getBeanMetaData( clazz );
+ List<ConstraintDescriptorImpl<?>> classMetaData;
+ if ( cachedMetaData != null ) {
+ classMetaData = new ArrayList<ConstraintDescriptorImpl<?>>();
+ for ( MetaConstraint<?, ?> metaConstraint : cachedMetaData.getMetaConstraintsAsMap().get( clazz ) ) {
+ ConstraintDescriptorImpl<?> descriptor = metaConstraint.getDescriptor();
+ if ( descriptor.getElementType() == ElementType.TYPE ) {
+ classMetaData.add( descriptor );
+ }
+ }
+ }
+ else {
+ classMetaData = findClassLevelConstraints( clazz );
+ }
+
+ for ( ConstraintDescriptorImpl<?> constraintDescription : classMetaData ) {
MetaConstraint<T, ?> metaConstraint = createMetaConstraint( null, constraintDescription );
addMetaConstraint( clazz, metaConstraint );
}
Added: validator/trunk/hibernate-validator/src/test/java/org/hibernate/validator/xml/MyInterface.java
===================================================================
--- validator/trunk/hibernate-validator/src/test/java/org/hibernate/validator/xml/MyInterface.java (rev 0)
+++ validator/trunk/hibernate-validator/src/test/java/org/hibernate/validator/xml/MyInterface.java 2009-10-28 12:14:31 UTC (rev 17860)
@@ -0,0 +1,27 @@
+// $Id:$
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2009, Red Hat, Inc. and/or its affiliates, and individual contributors
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* Licensed under the Apache License, Version 2.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+* http://www.apache.org/licenses/LICENSE-2.0
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*/
+package org.hibernate.validator.xml;
+
+/**
+ * @author Hardy Ferentschik
+ */
+public interface MyInterface {
+ Integer getId();
+}
+
+
Added: validator/trunk/hibernate-validator/src/test/java/org/hibernate/validator/xml/MyInterfaceImpl.java
===================================================================
--- validator/trunk/hibernate-validator/src/test/java/org/hibernate/validator/xml/MyInterfaceImpl.java (rev 0)
+++ validator/trunk/hibernate-validator/src/test/java/org/hibernate/validator/xml/MyInterfaceImpl.java 2009-10-28 12:14:31 UTC (rev 17860)
@@ -0,0 +1,28 @@
+// $Id:$
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2009, Red Hat, Inc. and/or its affiliates, and individual contributors
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* Licensed under the Apache License, Version 2.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+* http://www.apache.org/licenses/LICENSE-2.0
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*/
+package org.hibernate.validator.xml;
+
+
+/**
+ * @author Hardy Ferentschik
+ */
+public class MyInterfaceImpl implements MyInterface {
+ public Integer getId() {
+ return null;
+ }
+}
\ No newline at end of file
Modified: validator/trunk/hibernate-validator/src/test/java/org/hibernate/validator/xml/XmlMappingTest.java
===================================================================
--- validator/trunk/hibernate-validator/src/test/java/org/hibernate/validator/xml/XmlMappingTest.java 2009-10-28 10:57:21 UTC (rev 17859)
+++ validator/trunk/hibernate-validator/src/test/java/org/hibernate/validator/xml/XmlMappingTest.java 2009-10-28 12:14:31 UTC (rev 17860)
@@ -75,4 +75,36 @@
assertEquals( violations.size(), 0 );
}
+
+ @Test
+ /**
+ * HV-262
+ */
+ public void testInterfaceConfiguration() {
+
+ final Configuration<?> configuration = Validation.byDefaultProvider().configure();
+ configuration.addMapping( XmlMappingTest.class.getResourceAsStream( "my-interface-mapping.xml" ) );
+
+ final ValidatorFactory validatorFactory = configuration.buildValidatorFactory();
+ final Validator validator = validatorFactory.getValidator();
+ final Set<ConstraintViolation<MyInterfaceImpl>> violations = validator.validate( new MyInterfaceImpl());
+
+ assertEquals( violations.size(), 1);
+ }
+
+ @Test
+ /**
+ * HV-262
+ */
+ public void testInterfaceImplementationConfiguration() {
+
+ final Configuration<?> configuration = Validation.byDefaultProvider().configure();
+ configuration.addMapping( XmlMappingTest.class.getResourceAsStream( "my-interface-impl-mapping.xml" ) );
+
+ final ValidatorFactory validatorFactory = configuration.buildValidatorFactory();
+ final Validator validator = validatorFactory.getValidator();
+ final Set<ConstraintViolation<MyInterfaceImpl>> violations = validator.validate( new MyInterfaceImpl());
+
+ assertEquals( violations.size(), 1);
+ }
}
Added: validator/trunk/hibernate-validator/src/test/resources/org/hibernate/validator/xml/my-interface-impl-mapping.xml
===================================================================
--- validator/trunk/hibernate-validator/src/test/resources/org/hibernate/validator/xml/my-interface-impl-mapping.xml (rev 0)
+++ validator/trunk/hibernate-validator/src/test/resources/org/hibernate/validator/xml/my-interface-impl-mapping.xml 2009-10-28 12:14:31 UTC (rev 17860)
@@ -0,0 +1,10 @@
+<constraint-mappings xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://jboss.org/xml/ns/javax/validation/mapping validation-mapping-1.0.xsd"
+ xmlns="http://jboss.org/xml/ns/javax/validation/mapping">
+ <default-package>org.hibernate.validator.xml</default-package>
+ <bean class="MyInterfaceImpl" ignore-annotations="true">
+ <getter name="id" ignore-annotations="true">
+ <constraint annotation="javax.validation.constraints.NotNull"/>
+ </getter>
+ </bean>
+</constraint-mappings>
\ No newline at end of file
Copied: validator/trunk/hibernate-validator/src/test/resources/org/hibernate/validator/xml/my-interface-mapping.xml (from rev 17637, validator/trunk/hibernate-validator/src/test/resources/org/hibernate/validator/xml/mapping.xml)
===================================================================
--- validator/trunk/hibernate-validator/src/test/resources/org/hibernate/validator/xml/my-interface-mapping.xml (rev 0)
+++ validator/trunk/hibernate-validator/src/test/resources/org/hibernate/validator/xml/my-interface-mapping.xml 2009-10-28 12:14:31 UTC (rev 17860)
@@ -0,0 +1,10 @@
+<constraint-mappings xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://jboss.org/xml/ns/javax/validation/mapping validation-mapping-1.0.xsd"
+ xmlns="http://jboss.org/xml/ns/javax/validation/mapping">
+ <default-package>org.hibernate.validator.xml</default-package>
+ <bean class="MyInterface" ignore-annotations="true">
+ <getter name="id" ignore-annotations="true">
+ <constraint annotation="javax.validation.constraints.NotNull"/>
+ </getter>
+ </bean>
+</constraint-mappings>
\ No newline at end of file
15 years, 4 months
Hibernate SVN: r17859 - in core/trunk/annotations/src: test/java/org/hibernate/test/annotations/entity and 1 other directory.
by hibernate-commits@lists.jboss.org
Author: sharathjreddy
Date: 2009-10-28 06:57:21 -0400 (Wed, 28 Oct 2009)
New Revision: 17859
Added:
core/trunk/annotations/src/test/java/org/hibernate/test/annotations/entity/Drill.java
core/trunk/annotations/src/test/java/org/hibernate/test/annotations/entity/PowerDrill.java
core/trunk/annotations/src/test/java/org/hibernate/test/annotations/entity/Tool.java
core/trunk/annotations/src/test/java/org/hibernate/test/annotations/entity/Widget.java
Modified:
core/trunk/annotations/src/main/java/org/hibernate/cfg/AnnotationBinder.java
core/trunk/annotations/src/test/java/org/hibernate/test/annotations/entity/BasicHibernateAnnotationsTest.java
Log:
HHH-4332 Filters for MappedSuperClass
Modified: core/trunk/annotations/src/main/java/org/hibernate/cfg/AnnotationBinder.java
===================================================================
--- core/trunk/annotations/src/main/java/org/hibernate/cfg/AnnotationBinder.java 2009-10-28 10:45:31 UTC (rev 17858)
+++ core/trunk/annotations/src/main/java/org/hibernate/cfg/AnnotationBinder.java 2009-10-28 10:57:21 UTC (rev 17859)
@@ -434,6 +434,7 @@
if ( AnnotatedClassType.EMBEDDABLE_SUPERCLASS.equals( classType ) ) {
bindQueries( clazzToProcess, mappings );
bindTypeDefs(clazzToProcess, mappings);
+ bindFilterDefs(clazzToProcess, mappings);
}
if ( AnnotatedClassType.EMBEDDABLE_SUPERCLASS.equals( classType ) //will be processed by their subentities
@@ -593,16 +594,12 @@
entityBinder.setWhere( whereAnn );
entityBinder.setCache( cacheAnn );
entityBinder.setInheritanceState( inheritanceState );
- Filter filterAnn = annotatedClass.getAnnotation( Filter.class );
- if ( filterAnn != null ) {
- entityBinder.addFilter( filterAnn.name(), filterAnn.condition() );
+
+ //Filters are not allowed on subclasses
+ if ( !inheritanceState.hasParents ) {
+ bindFilters(clazzToProcess, entityBinder, mappings);
}
- Filters filtersAnn = annotatedClass.getAnnotation( Filters.class );
- if ( filtersAnn != null ) {
- for (Filter filter : filtersAnn.value()) {
- entityBinder.addFilter( filter.name(), filter.condition() );
- }
- }
+
entityBinder.bindEntity();
if ( inheritanceState.hasTable() ) {
@@ -969,7 +966,42 @@
return classesToProcess;
}
-
+
+ /**
+ * Process the filters defined on the given class, as well as all filters defined
+ * on the MappedSuperclass(s) in the inheritance hierarchy
+ */
+ private static void bindFilters(XClass annotatedClass, EntityBinder entityBinder,
+ ExtendedMappings mappings) {
+
+ bindFilters(annotatedClass, entityBinder);
+
+ XClass classToProcess = annotatedClass.getSuperclass();
+ while (classToProcess != null) {
+ AnnotatedClassType classType = mappings.getClassType( classToProcess );
+ if ( AnnotatedClassType.EMBEDDABLE_SUPERCLASS.equals( classType ) ) {
+ bindFilters(classToProcess, entityBinder);
+ }
+ classToProcess = classToProcess.getSuperclass();
+ }
+
+ }
+
+ private static void bindFilters(XAnnotatedElement annotatedElement, EntityBinder entityBinder) {
+
+ Filters filtersAnn = annotatedElement.getAnnotation( Filters.class );
+ if ( filtersAnn != null ) {
+ for (Filter filter : filtersAnn.value()) {
+ entityBinder.addFilter( filter.name(), filter.condition() );
+ }
+ }
+
+ Filter filterAnn = annotatedElement.getAnnotation( Filter.class );
+ if ( filterAnn != null ) {
+ entityBinder.addFilter( filterAnn.name(), filterAnn.condition() );
+ }
+ }
+
private static void bindFilterDefs(XAnnotatedElement annotatedElement, ExtendedMappings mappings) {
FilterDef defAnn = annotatedElement.getAnnotation( FilterDef.class );
FilterDefs defsAnn = annotatedElement.getAnnotation( FilterDefs.class );
Modified: core/trunk/annotations/src/test/java/org/hibernate/test/annotations/entity/BasicHibernateAnnotationsTest.java
===================================================================
--- core/trunk/annotations/src/test/java/org/hibernate/test/annotations/entity/BasicHibernateAnnotationsTest.java 2009-10-28 10:45:31 UTC (rev 17858)
+++ core/trunk/annotations/src/test/java/org/hibernate/test/annotations/entity/BasicHibernateAnnotationsTest.java 2009-10-28 10:57:21 UTC (rev 17859)
@@ -341,7 +341,54 @@
tx.rollback();
s.close();
}
-
+
+ /**
+ * Tests the functionality of inheriting @Filter and @FilterDef annotations
+ * defined on a parent MappedSuperclass(s)
+ */
+ public void testInheritFiltersFromMappedSuperclass() throws Exception {
+ Session s;
+ Transaction tx;
+ s = openSession();
+ tx = s.beginTransaction();
+ s.createQuery( "delete Drill" ).executeUpdate();
+ Drill d1 = new PowerDrill();
+ d1.setName("HomeDrill1");
+ d1.setCategory("HomeImprovment");
+ s.persist( d1 );
+ Drill d2 = new PowerDrill();
+ d2.setName("HomeDrill2");
+ d2.setCategory("HomeImprovement");
+ s.persist(d2);
+ Drill d3 = new PowerDrill();
+ d3.setName("HighPowerDrill");
+ d3.setCategory("Industrial");
+ s.persist( d3 );
+ tx.commit();
+ s.close();
+ s = openSession();
+ tx = s.beginTransaction();
+
+ //We test every filter with 2 queries, the first on the base class of the
+ //inheritance hierarchy (Drill), and the second on a subclass (PowerDrill)
+ s.enableFilter( "byName" ).setParameter( "name", "HomeDrill1");
+ long count = ( (Long) s.createQuery( "select count(*) from Drill" ).iterate().next() ).intValue();
+ assertEquals( 1, count );
+ count = ( (Long) s.createQuery( "select count(*) from PowerDrill" ).iterate().next() ).intValue();
+ assertEquals( 1, count );
+ s.disableFilter( "byName" );
+
+ s.enableFilter( "byCategory" ).setParameter( "category", "Industrial" );
+ count = ( (Long) s.createQuery( "select count(*) from Drill" ).iterate().next() ).longValue();
+ assertEquals( 1, count );
+ count = ( (Long) s.createQuery( "select count(*) from PowerDrill" ).iterate().next() ).longValue();
+ assertEquals( 1, count );
+ s.disableFilter( "byCategory" );
+
+ tx.rollback();
+ s.close();
+ }
+
public void testParameterizedType() throws Exception {
if( !getDialect().supportsExpectedLobUsagePattern() ){
return;
@@ -519,7 +566,7 @@
super( x );
}
- protected Class[] getMappings() {
+ protected Class<?>[] getMappings() {
return new Class[]{
Forest.class,
Tree.class,
@@ -532,7 +579,9 @@
Peugot.class,
ContactDetails.class,
Topic.class,
- Narrative.class
+ Narrative.class,
+ Drill.class,
+ PowerDrill.class
};
}
Added: core/trunk/annotations/src/test/java/org/hibernate/test/annotations/entity/Drill.java
===================================================================
--- core/trunk/annotations/src/test/java/org/hibernate/test/annotations/entity/Drill.java (rev 0)
+++ core/trunk/annotations/src/test/java/org/hibernate/test/annotations/entity/Drill.java 2009-10-28 10:57:21 UTC (rev 17859)
@@ -0,0 +1,57 @@
+/*
+ * Hibernate, Relational Persistence for Idiomatic Java
+ *
+ * Copyright (c) 2009, Red Hat, Inc. and/or its affiliates or third-party contributors as
+ * indicated by the @author tags or express copyright attribution
+ * statements applied by the authors. All third-party contributions are
+ * distributed under license by Red Hat, Inc.
+ *
+ * This copyrighted material is made available to anyone wishing to use, modify,
+ * copy, or redistribute it subject to the terms and conditions of the GNU
+ * Lesser General Public License, as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+ * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License
+ * for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this distribution; if not, write to:
+ * Free Software Foundation, Inc.
+ * 51 Franklin Street, Fifth Floor
+ * Boston, MA 02110-1301 USA
+ */
+
+package org.hibernate.test.annotations.entity;
+
+import javax.persistence.DiscriminatorColumn;
+import javax.persistence.DiscriminatorType;
+import javax.persistence.Entity;
+import javax.persistence.GeneratedValue;
+import javax.persistence.Id;
+import javax.persistence.Inheritance;
+import javax.persistence.InheritanceType;
+
+/**
+ * @author Sharath Reddy
+ */
+@Entity
+(a)Inheritance(strategy=InheritanceType.SINGLE_TABLE)
+@DiscriminatorColumn(
+ name="DRILL_TYPE",
+ discriminatorType = DiscriminatorType.STRING
+)
+public abstract class Drill extends Tool {
+
+ @Id @GeneratedValue
+ private int id;
+
+ public int getId() {
+ return id;
+ }
+
+ public void setId(int id) {
+ this.id = id;
+ }
+
+}
Added: core/trunk/annotations/src/test/java/org/hibernate/test/annotations/entity/PowerDrill.java
===================================================================
--- core/trunk/annotations/src/test/java/org/hibernate/test/annotations/entity/PowerDrill.java (rev 0)
+++ core/trunk/annotations/src/test/java/org/hibernate/test/annotations/entity/PowerDrill.java 2009-10-28 10:57:21 UTC (rev 17859)
@@ -0,0 +1,37 @@
+/*
+ * Hibernate, Relational Persistence for Idiomatic Java
+ *
+ * Copyright (c) 2009, Red Hat, Inc. and/or its affiliates or third-party contributors as
+ * indicated by the @author tags or express copyright attribution
+ * statements applied by the authors. All third-party contributions are
+ * distributed under license by Red Hat, Inc.
+ *
+ * This copyrighted material is made available to anyone wishing to use, modify,
+ * copy, or redistribute it subject to the terms and conditions of the GNU
+ * Lesser General Public License, as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+ * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License
+ * for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this distribution; if not, write to:
+ * Free Software Foundation, Inc.
+ * 51 Franklin Street, Fifth Floor
+ * Boston, MA 02110-1301 USA
+ */
+
+package org.hibernate.test.annotations.entity;
+
+import javax.persistence.DiscriminatorValue;
+import javax.persistence.Entity;
+
+/**
+ * @author Sharath Reddy
+ */
+@Entity
+@DiscriminatorValue("Power")
+public class PowerDrill extends Drill {
+
+}
Added: core/trunk/annotations/src/test/java/org/hibernate/test/annotations/entity/Tool.java
===================================================================
--- core/trunk/annotations/src/test/java/org/hibernate/test/annotations/entity/Tool.java (rev 0)
+++ core/trunk/annotations/src/test/java/org/hibernate/test/annotations/entity/Tool.java 2009-10-28 10:57:21 UTC (rev 17859)
@@ -0,0 +1,51 @@
+/*
+ * Hibernate, Relational Persistence for Idiomatic Java
+ *
+ * Copyright (c) 2009, Red Hat, Inc. and/or its affiliates or third-party contributors as
+ * indicated by the @author tags or express copyright attribution
+ * statements applied by the authors. All third-party contributions are
+ * distributed under license by Red Hat, Inc.
+ *
+ * This copyrighted material is made available to anyone wishing to use, modify,
+ * copy, or redistribute it subject to the terms and conditions of the GNU
+ * Lesser General Public License, as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+ * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License
+ * for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this distribution; if not, write to:
+ * Free Software Foundation, Inc.
+ * 51 Franklin Street, Fifth Floor
+ * Boston, MA 02110-1301 USA
+ */
+
+package org.hibernate.test.annotations.entity;
+
+import javax.persistence.MappedSuperclass;
+import org.hibernate.annotations.Filter;
+import org.hibernate.annotations.FilterDef;
+import org.hibernate.annotations.ParamDef;
+
+/**
+ * @author Sharath Reddy
+ */
+@FilterDef(name = "byCategory", parameters = {@ParamDef(name = "category", type = "string")})
+@Filter(name = "byCategory", condition = ":category = CATEGORY")
+@MappedSuperclass
+public class Tool extends Widget {
+
+ private String category;
+
+ public String getCategory() {
+ return category;
+ }
+
+ public void setCategory(String category) {
+ this.category = category;
+ }
+
+
+}
Added: core/trunk/annotations/src/test/java/org/hibernate/test/annotations/entity/Widget.java
===================================================================
--- core/trunk/annotations/src/test/java/org/hibernate/test/annotations/entity/Widget.java (rev 0)
+++ core/trunk/annotations/src/test/java/org/hibernate/test/annotations/entity/Widget.java 2009-10-28 10:57:21 UTC (rev 17859)
@@ -0,0 +1,50 @@
+/*
+ * Hibernate, Relational Persistence for Idiomatic Java
+ *
+ * Copyright (c) 2009, Red Hat, Inc. and/or its affiliates or third-party contributors as
+ * indicated by the @author tags or express copyright attribution
+ * statements applied by the authors. All third-party contributions are
+ * distributed under license by Red Hat, Inc.
+ *
+ * This copyrighted material is made available to anyone wishing to use, modify,
+ * copy, or redistribute it subject to the terms and conditions of the GNU
+ * Lesser General Public License, as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+ * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License
+ * for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this distribution; if not, write to:
+ * Free Software Foundation, Inc.
+ * 51 Franklin Street, Fifth Floor
+ * Boston, MA 02110-1301 USA
+ */
+
+package org.hibernate.test.annotations.entity;
+
+import javax.persistence.MappedSuperclass;
+import org.hibernate.annotations.Filter;
+import org.hibernate.annotations.FilterDef;
+import org.hibernate.annotations.ParamDef;
+
+/**
+ * @author Sharath Reddy
+ */
+@FilterDef(name = "byName", parameters = {@ParamDef(name = "name", type = "string")})
+@Filter(name = "byName", condition = ":name = name")
+@MappedSuperclass
+public class Widget {
+
+ private String name;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+}
15 years, 4 months
Hibernate SVN: r17858 - validator/trunk/hibernate-validator-tck-runner.
by hibernate-commits@lists.jboss.org
Author: hardy.ferentschik
Date: 2009-10-28 06:45:31 -0400 (Wed, 28 Oct 2009)
New Revision: 17858
Modified:
validator/trunk/hibernate-validator-tck-runner/pom.xml
Log:
Updated tck dependency
Modified: validator/trunk/hibernate-validator-tck-runner/pom.xml
===================================================================
--- validator/trunk/hibernate-validator-tck-runner/pom.xml 2009-10-28 09:54:01 UTC (rev 17857)
+++ validator/trunk/hibernate-validator-tck-runner/pom.xml 2009-10-28 10:45:31 UTC (rev 17858)
@@ -32,7 +32,7 @@
<dependency>
<groupId>org.hibernate.jsr303.tck</groupId>
<artifactId>jsr303-tck</artifactId>
- <version>1.0.1.GA-SNAPSHOT</version>
+ <version>1.0.1.GA</version>
</dependency>
<dependency>
<groupId>org.jboss.test-harness</groupId>
15 years, 4 months