[hibernate-commits] Hibernate SVN: r16605 - in validator/trunk/hibernate-validator/src: main/java/org/hibernate/validation/engine/xml and 7 other directories.
hibernate-commits at lists.jboss.org
hibernate-commits at lists.jboss.org
Wed May 20 05:42:21 EDT 2009
Author: hardy.ferentschik
Date: 2009-05-20 05:42:21 -0400 (Wed, 20 May 2009)
New Revision: 16605
Added:
validator/trunk/hibernate-validator/src/test/java/org/hibernate/validation/engine/xml/Order.java
validator/trunk/hibernate-validator/src/test/java/org/hibernate/validation/engine/xml/OrderLine.java
validator/trunk/hibernate-validator/src/test/resources/org/
validator/trunk/hibernate-validator/src/test/resources/org/hibernate/
validator/trunk/hibernate-validator/src/test/resources/org/hibernate/validation/
validator/trunk/hibernate-validator/src/test/resources/org/hibernate/validation/engine/
validator/trunk/hibernate-validator/src/test/resources/org/hibernate/validation/engine/xml/
validator/trunk/hibernate-validator/src/test/resources/org/hibernate/validation/engine/xml/order-constraints.xml
validator/trunk/hibernate-validator/src/test/resources/org/hibernate/validation/engine/xml/validation.xml
Modified:
validator/trunk/hibernate-validator/src/main/java/org/hibernate/validation/engine/ValidatorFactoryImpl.java
validator/trunk/hibernate-validator/src/main/java/org/hibernate/validation/engine/xml/ValidationXmlParser.java
validator/trunk/hibernate-validator/src/main/java/org/hibernate/validation/engine/xml/XmlMappingParser.java
validator/trunk/hibernate-validator/src/test/java/org/hibernate/validation/engine/xml/XmlConfigurationTest.java
Log:
HV-159 Added tests and bug fix
Modified: validator/trunk/hibernate-validator/src/main/java/org/hibernate/validation/engine/ValidatorFactoryImpl.java
===================================================================
--- validator/trunk/hibernate-validator/src/main/java/org/hibernate/validation/engine/ValidatorFactoryImpl.java 2009-05-20 04:39:00 UTC (rev 16604)
+++ validator/trunk/hibernate-validator/src/main/java/org/hibernate/validation/engine/ValidatorFactoryImpl.java 2009-05-20 09:42:21 UTC (rev 16605)
@@ -93,15 +93,17 @@
BeanMetaDataImpl<?> metaData = new BeanMetaDataImpl<T>(
( Class<T> ) beanClass, constraintHelper, annotationIgnores
);
- for ( MetaConstraint<?, ? extends Annotation> constraint : mappingParser.getConstraintMap()
- .get( beanClass ) ) {
+
+ for ( MetaConstraint<?, ? extends Annotation> constraint : mappingParser.getConstraintsForClass( beanClass ) ) {
metaData.addMetaConstraint( constraint );
}
- for ( Member m : mappingParser.getCascadedMembers().get( beanClass ) ) {
+
+ for ( Member m : mappingParser.getCascadedMembersForClass( beanClass ) ) {
metaData.addCascadedMember( m );
}
- if ( mappingParser.getDefaultSequences().containsKey( beanClass ) ) {
- metaData.setDefaultGroupSequence( mappingParser.getDefaultSequences().get( beanClass ) );
+
+ if ( !mappingParser.getDefaultSequenceForClass( beanClass ).isEmpty() ) {
+ metaData.setDefaultGroupSequence( mappingParser.getDefaultSequenceForClass( beanClass ) );
}
beanMetaDataCache.addBeanMetaData( ( Class<T> ) beanClass, ( BeanMetaDataImpl<T> ) metaData );
}
Modified: validator/trunk/hibernate-validator/src/main/java/org/hibernate/validation/engine/xml/ValidationXmlParser.java
===================================================================
--- validator/trunk/hibernate-validator/src/main/java/org/hibernate/validation/engine/xml/ValidationXmlParser.java 2009-05-20 04:39:00 UTC (rev 16604)
+++ validator/trunk/hibernate-validator/src/main/java/org/hibernate/validation/engine/xml/ValidationXmlParser.java 2009-05-20 09:42:21 UTC (rev 16605)
@@ -118,7 +118,7 @@
for ( JAXBElement<String> mappingFileName : config.getConstraintMapping() ) {
if ( log.isDebugEnabled() ) {
log.debug(
- "Trying to open input stream for {}.", mappingFileName
+ "Trying to open input stream for {}.", mappingFileName.getValue()
);
InputStream in = getInputStreamForPath( mappingFileName.getValue() );
if ( in == null ) {
Modified: validator/trunk/hibernate-validator/src/main/java/org/hibernate/validation/engine/xml/XmlMappingParser.java
===================================================================
--- validator/trunk/hibernate-validator/src/main/java/org/hibernate/validation/engine/xml/XmlMappingParser.java 2009-05-20 04:39:00 UTC (rev 16604)
+++ validator/trunk/hibernate-validator/src/main/java/org/hibernate/validation/engine/xml/XmlMappingParser.java 2009-05-20 09:42:21 UTC (rev 16605)
@@ -27,6 +27,7 @@
import java.lang.reflect.Method;
import java.net.URL;
import java.util.ArrayList;
+import java.util.Collections;
import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
@@ -127,16 +128,31 @@
return annotationIgnores;
}
- public Map<Class<?>, List<MetaConstraint<?, ? extends Annotation>>> getConstraintMap() {
- return constraintMap;
+ public List<MetaConstraint<?, ? extends Annotation>> getConstraintsForClass(Class<?> beanClass) {
+ if ( constraintMap.containsKey( beanClass ) ) {
+ return constraintMap.get( beanClass );
+ }
+ else {
+ return Collections.emptyList();
+ }
}
- public Map<Class<?>, List<Member>> getCascadedMembers() {
- return cascadedMembers;
+ public List<Member> getCascadedMembersForClass(Class<?> beanClass) {
+ if ( cascadedMembers.containsKey( beanClass ) ) {
+ return cascadedMembers.get( beanClass );
+ }
+ else {
+ return Collections.emptyList();
+ }
}
- public Map<Class<?>, List<Class<?>>> getDefaultSequences() {
- return defaultSequences;
+ public List<Class<?>> getDefaultSequenceForClass(Class<?> beanClass) {
+ if ( defaultSequences.containsKey( beanClass ) ) {
+ return defaultSequences.get( beanClass );
+ }
+ else {
+ return Collections.emptyList();
+ }
}
@SuppressWarnings("unchecked")
Added: validator/trunk/hibernate-validator/src/test/java/org/hibernate/validation/engine/xml/Order.java
===================================================================
--- validator/trunk/hibernate-validator/src/test/java/org/hibernate/validation/engine/xml/Order.java (rev 0)
+++ validator/trunk/hibernate-validator/src/test/java/org/hibernate/validation/engine/xml/Order.java 2009-05-20 09:42:21 UTC (rev 16605)
@@ -0,0 +1,32 @@
+// $Id$
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2008, Red Hat Middleware LLC, 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.validation.engine.xml;
+
+import java.util.Date;
+import java.util.List;
+
+/**
+ * @author Hardy Ferentschik
+ */
+public class Order {
+
+ private Date orderDate;
+
+ private List<OrderLine> orderLines;
+
+}
\ No newline at end of file
Property changes on: validator/trunk/hibernate-validator/src/test/java/org/hibernate/validation/engine/xml/Order.java
___________________________________________________________________
Name: svn:executable
+ *
Name: svn:keywords
+ Id
Name: svn:eol-style
+ native
Added: validator/trunk/hibernate-validator/src/test/java/org/hibernate/validation/engine/xml/OrderLine.java
===================================================================
--- validator/trunk/hibernate-validator/src/test/java/org/hibernate/validation/engine/xml/OrderLine.java (rev 0)
+++ validator/trunk/hibernate-validator/src/test/java/org/hibernate/validation/engine/xml/OrderLine.java 2009-05-20 09:42:21 UTC (rev 16605)
@@ -0,0 +1,24 @@
+// $Id$
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2008, Red Hat Middleware LLC, 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.validation.engine.xml;
+
+/**
+ * @author Hardy Ferentschik
+ */
+public class OrderLine {
+}
Property changes on: validator/trunk/hibernate-validator/src/test/java/org/hibernate/validation/engine/xml/OrderLine.java
___________________________________________________________________
Name: svn:executable
+ *
Name: svn:keywords
+ Id
Name: svn:eol-style
+ native
Modified: validator/trunk/hibernate-validator/src/test/java/org/hibernate/validation/engine/xml/XmlConfigurationTest.java
===================================================================
--- validator/trunk/hibernate-validator/src/test/java/org/hibernate/validation/engine/xml/XmlConfigurationTest.java 2009-05-20 04:39:00 UTC (rev 16604)
+++ validator/trunk/hibernate-validator/src/test/java/org/hibernate/validation/engine/xml/XmlConfigurationTest.java 2009-05-20 09:42:21 UTC (rev 16605)
@@ -22,6 +22,7 @@
import javax.validation.ValidationException;
import javax.validation.Validator;
+import static org.testng.Assert.assertFalse;
import org.testng.annotations.Test;
import org.hibernate.validation.util.TestUtil;
@@ -131,4 +132,15 @@
public void testInvalidValidationXml() {
getValidatorWithCustomConfiguration( "META-INF/validation-invalid-xml.xml" );
}
+
+ /**
+ * HV-159
+ */
+ @Test
+ public void testNoDefinedConstraints() {
+ Validator validator = getValidatorWithCustomConfiguration( "org/hibernate/validation/engine/xml/validation.xml" );
+ assertFalse(
+ validator.getConstraintsForClass( Order.class ).isBeanConstrained(), "Bean should be unsonstrained"
+ );
+ }
}
Added: validator/trunk/hibernate-validator/src/test/resources/org/hibernate/validation/engine/xml/order-constraints.xml
===================================================================
--- validator/trunk/hibernate-validator/src/test/resources/org/hibernate/validation/engine/xml/order-constraints.xml (rev 0)
+++ validator/trunk/hibernate-validator/src/test/resources/org/hibernate/validation/engine/xml/order-constraints.xml 2009-05-20 09:42:21 UTC (rev 16605)
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<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.validation.engine.xml</default-package>
+
+ <bean class="Order" ignore-annotations="false">
+ </bean>
+
+</constraint-mappings>
\ No newline at end of file
Property changes on: validator/trunk/hibernate-validator/src/test/resources/org/hibernate/validation/engine/xml/order-constraints.xml
___________________________________________________________________
Name: svn:executable
+ *
Name: svn:keywords
+ Id
Name: svn:eol-style
+ native
Added: validator/trunk/hibernate-validator/src/test/resources/org/hibernate/validation/engine/xml/validation.xml
===================================================================
--- validator/trunk/hibernate-validator/src/test/resources/org/hibernate/validation/engine/xml/validation.xml (rev 0)
+++ validator/trunk/hibernate-validator/src/test/resources/org/hibernate/validation/engine/xml/validation.xml 2009-05-20 09:42:21 UTC (rev 16605)
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<validation-config
+ xmlns="http://jboss.org/xml/ns/javax/validation/configuration"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://jboss.org/xml/ns/javax/validation/configuration validation-configuration-1.0.xsd">
+
+ <constraint-mapping>org/hibernate/validation/engine/xml/order-constraints.xml</constraint-mapping>
+</validation-config>
\ No newline at end of file
Property changes on: validator/trunk/hibernate-validator/src/test/resources/org/hibernate/validation/engine/xml/validation.xml
___________________________________________________________________
Name: svn:executable
+ *
Name: svn:keywords
+ Id
Name: svn:eol-style
+ native
More information about the hibernate-commits
mailing list