From: <hib...@li...> - 2006-05-01 01:06:09
|
Author: epbernard Date: 2006-04-30 21:05:59 -0400 (Sun, 30 Apr 2006) New Revision: 9839 Added: trunk/HibernateExt/metadata/src/test/org/hibernate/test/annotations/xml/hbm/CloudType.hbm.xml trunk/HibernateExt/metadata/src/test/org/hibernate/test/annotations/xml/hbm/CloudType.java trunk/HibernateExt/metadata/src/test/org/hibernate/test/annotations/xml/hbm/Sky.java Modified: trunk/HibernateExt/metadata/src/test/org/hibernate/test/annotations/xml/hbm/HbmTest.java Log: more tests one hbm / annotations links Added: trunk/HibernateExt/metadata/src/test/org/hibernate/test/annotations/xml/hbm/CloudType.hbm.xml =================================================================== --- trunk/HibernateExt/metadata/src/test/org/hibernate/test/annotations/xml/hbm/CloudType.hbm.xml 2006-04-30 19:00:59 UTC (rev 9838) +++ trunk/HibernateExt/metadata/src/test/org/hibernate/test/annotations/xml/hbm/CloudType.hbm.xml 2006-05-01 01:05:59 UTC (rev 9839) @@ -0,0 +1,15 @@ +<?xml version="1.0"?> +<!DOCTYPE hibernate-mapping PUBLIC + "-//Hibernate/Hibernate Mapping DTD 3.0//EN" + "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> + +<hibernate-mapping package="org.hibernate.test.annotations.xml.hbm"> + + <class name="CloudType"> + <id name="id"> + <generator class="native"/> + </id> + <property name="name"/> + </class> + +</hibernate-mapping> \ No newline at end of file Added: trunk/HibernateExt/metadata/src/test/org/hibernate/test/annotations/xml/hbm/CloudType.java =================================================================== --- trunk/HibernateExt/metadata/src/test/org/hibernate/test/annotations/xml/hbm/CloudType.java 2006-04-30 19:00:59 UTC (rev 9838) +++ trunk/HibernateExt/metadata/src/test/org/hibernate/test/annotations/xml/hbm/CloudType.java 2006-05-01 01:05:59 UTC (rev 9839) @@ -0,0 +1,26 @@ +//$Id: $ +package org.hibernate.test.annotations.xml.hbm; + +/** + * @author Emmanuel Bernard + */ +public class CloudType { + private Integer id; + private String name; + + public Integer getId() { + return id; + } + + public void setId(Integer id) { + this.id = id; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } +} Modified: trunk/HibernateExt/metadata/src/test/org/hibernate/test/annotations/xml/hbm/HbmTest.java =================================================================== --- trunk/HibernateExt/metadata/src/test/org/hibernate/test/annotations/xml/hbm/HbmTest.java 2006-04-30 19:00:59 UTC (rev 9838) +++ trunk/HibernateExt/metadata/src/test/org/hibernate/test/annotations/xml/hbm/HbmTest.java 2006-05-01 01:05:59 UTC (rev 9839) @@ -49,6 +49,20 @@ s.close(); } + public void testManyToMany() throws Exception { + Session s = openSession(); + s.getTransaction().begin(); + CloudType type = new CloudType(); + type.setName( "Cumulus" ); + Sky sky = new Sky(); + s.persist( type ); + sky.getCloudTypes().add(type); + s.persist( sky ); + s.flush(); + s.getTransaction().rollback(); + s.close(); + } + @Override protected void configure(Configuration cfg) { super.configure( cfg ); @@ -57,14 +71,16 @@ protected Class[] getMappings() { return new Class[]{ - PrimeMinister.class + PrimeMinister.class, + Sky.class }; } @Override protected String[] getXmlFiles() { return new String[]{ - "org/hibernate/test/annotations/xml/hbm/Government.hbm.xml" + "org/hibernate/test/annotations/xml/hbm/Government.hbm.xml", + "org/hibernate/test/annotations/xml/hbm/CloudType.hbm.xml" }; } } Added: trunk/HibernateExt/metadata/src/test/org/hibernate/test/annotations/xml/hbm/Sky.java =================================================================== --- trunk/HibernateExt/metadata/src/test/org/hibernate/test/annotations/xml/hbm/Sky.java 2006-04-30 19:00:59 UTC (rev 9838) +++ trunk/HibernateExt/metadata/src/test/org/hibernate/test/annotations/xml/hbm/Sky.java 2006-05-01 01:05:59 UTC (rev 9839) @@ -0,0 +1,47 @@ +//$Id: $ +package org.hibernate.test.annotations.xml.hbm; + +import java.util.HashSet; +import java.util.Set; +import javax.persistence.Entity; +import javax.persistence.GeneratedValue; +import javax.persistence.Id; +import javax.persistence.ManyToMany; +import javax.persistence.ManyToOne; + +/** + * @author Emmanuel Bernard + */ +@Entity(name="EarthSky") +public class Sky { + private Integer id; + private Set<CloudType> cloudTypes = new HashSet<CloudType>(); + private CloudType mainCloud; + + @ManyToMany + public Set<CloudType> getCloudTypes() { + return cloudTypes; + } + + public void setCloudTypes(Set<CloudType> cloudTypes) { + this.cloudTypes = cloudTypes; + } + + @Id @GeneratedValue + public Integer getId() { + return id; + } + + public void setId(Integer id) { + this.id = id; + } + + @ManyToOne + public CloudType getMainCloud() { + return mainCloud; + } + + public void setMainCloud(CloudType mainCloud) { + this.mainCloud = mainCloud; + } +} |