[hibernate-commits] Hibernate SVN: r17172 - in core/trunk/annotations/src: test/java/org/hibernate/test/annotations/target and 1 other directory.

hibernate-commits at lists.jboss.org hibernate-commits at lists.jboss.org
Mon Jul 20 21:25:23 EDT 2009


Author: epbernard
Date: 2009-07-20 21:25:22 -0400 (Mon, 20 Jul 2009)
New Revision: 17172

Modified:
   core/trunk/annotations/src/main/java/org/hibernate/cfg/annotations/MapBinder.java
   core/trunk/annotations/src/test/java/org/hibernate/test/annotations/target/Brand.java
Log:
ANN-855 implement @MapKeyClass

Modified: core/trunk/annotations/src/main/java/org/hibernate/cfg/annotations/MapBinder.java
===================================================================
--- core/trunk/annotations/src/main/java/org/hibernate/cfg/annotations/MapBinder.java	2009-07-20 23:24:38 UTC (rev 17171)
+++ core/trunk/annotations/src/main/java/org/hibernate/cfg/annotations/MapBinder.java	2009-07-21 01:25:22 UTC (rev 17172)
@@ -29,6 +29,7 @@
 import java.util.Random;
 import javax.persistence.AttributeOverride;
 import javax.persistence.AttributeOverrides;
+import javax.persistence.MapKeyClass;
 
 import org.hibernate.AnnotationException;
 import org.hibernate.AssertionFailure;
@@ -141,6 +142,9 @@
 			if ( property.isAnnotationPresent( org.hibernate.annotations.MapKey.class ) ) {
 				target = property.getAnnotation( org.hibernate.annotations.MapKey.class ).targetElement();
 			}
+			else if ( property.isAnnotationPresent( MapKeyClass.class ) ) {
+				target = property.getAnnotation( MapKeyClass.class ).value();
+			}
 			else if ( property.isAnnotationPresent( MapKeyManyToMany.class ) ) {
 				target = property.getAnnotation( MapKeyManyToMany.class ).targetEntity();
 			}

Modified: core/trunk/annotations/src/test/java/org/hibernate/test/annotations/target/Brand.java
===================================================================
--- core/trunk/annotations/src/test/java/org/hibernate/test/annotations/target/Brand.java	2009-07-20 23:24:38 UTC (rev 17171)
+++ core/trunk/annotations/src/test/java/org/hibernate/test/annotations/target/Brand.java	2009-07-21 01:25:22 UTC (rev 17172)
@@ -27,6 +27,7 @@
 
 	@ElementCollection(targetClass = SizeImpl.class)
 	@MapKeyManyToMany(targetEntity = LuggageImpl.class)
+	//TODO @MapKeyClass(LuggageImpl.class)
 	private Map<Luggage, Size> sizePerLuggage = new HashMap<Luggage, Size>();
 
 



More information about the hibernate-commits mailing list