| <?xml version="1.0" encoding="UTF-8"?> |
| <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> |
| |
| <hibernate-mapping auto-import="false"> |
| <class name="org.eclipse.emf.teneo.samples.emf.annotations.joincolumns.impl.PersonImpl" entity-name="Person" abstract="false" lazy="false" discriminator-value="Person" table="`person`"> |
| <meta attribute="eclassName">Person</meta> |
| <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/annotations/joincolumns</meta> |
| <composite-id class="org.eclipse.emf.teneo.samples.emf.annotations.compositeid.PersonID" mapped="true"> |
| <key-property name="firstName" type="java.lang.String"> |
| <column not-null="true" unique="false" name="`firstname`"/> |
| </key-property> |
| <key-property name="lastName" type="java.lang.String"> |
| <column not-null="true" unique="false" name="`lastname`"/> |
| </key-property> |
| </composite-id> |
| <discriminator type="string"> |
| <column name="dtype" index="persondtype" length="255" not-null="true"/> |
| </discriminator> |
| <version name="myversion" column="myversion" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler"> |
| <meta attribute="syntheticVersion">true</meta> |
| </version> |
| <bag name="friends" lazy="true" cascade="merge,persist,save-update,lock,refresh" table="`person_person`"> |
| <key update="true"> |
| <column name="`person_friends_firstname`" not-null="true" unique="false"/> |
| <column name="`person_friends_lastname`" not-null="true" unique="false"/> |
| </key> |
| <many-to-many entity-name="Person" unique="false" foreign-key="person_friends"> |
| <column name="`person_oppositefriends_firstname`" not-null="true" unique="false"/> |
| <column name="`person_oppositefriends_lastname`" not-null="true" unique="false"/> |
| </many-to-many> |
| </bag> |
| <bag name="oppositeFriends" lazy="true" cascade="merge,persist,save-update,lock,refresh" inverse="true" table="`person_person`"> |
| <key update="true"> |
| <column name="`person_oppositefriends_firstname`" not-null="true" unique="false"/> |
| <column name="`person_oppositefriends_lastname`" not-null="true" unique="false"/> |
| </key> |
| <many-to-many entity-name="Person" unique="false" foreign-key="person_oppositefriends"> |
| <column name="`person_friends_firstname`" not-null="true" unique="false"/> |
| <column name="`person_friends_lastname`" not-null="true" unique="false"/> |
| </many-to-many> |
| </bag> |
| </class> |
| <subclass name="org.eclipse.emf.teneo.samples.emf.annotations.joincolumns.impl.ParentImpl" entity-name="Parent" abstract="false" lazy="false" extends="Person" discriminator-value="Parent"> |
| <meta attribute="eclassName">Parent</meta> |
| <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/annotations/joincolumns</meta> |
| <list name="children" lazy="true" cascade="all,delete-orphan"> |
| <key update="true" foreign-key="parent_children"> |
| <column name="`myparentfirstname`" not-null="false" unique="false"/> |
| <column name="`myparentlastname`" not-null="false" unique="false"/> |
| </key> |
| <list-index column="`parent_children_idx`"/> |
| <one-to-many entity-name="Child"/> |
| </list> |
| </subclass> |
| <subclass name="org.eclipse.emf.teneo.samples.emf.annotations.joincolumns.impl.ChildImpl" entity-name="Child" abstract="false" lazy="false" extends="Person" discriminator-value="Child"> |
| <meta attribute="eclassName">Child</meta> |
| <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/annotations/joincolumns</meta> |
| </subclass> |
| <class name="org.eclipse.emf.teneo.samples.emf.annotations.joincolumns.impl.HouseImpl" entity-name="House" abstract="false" lazy="false" discriminator-value="House" table="`house`"> |
| <meta attribute="eclassName">House</meta> |
| <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/annotations/joincolumns</meta> |
| <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler"> |
| <meta attribute="syntheticId">true</meta> |
| <generator class="native"/> |
| </id> |
| <discriminator type="string"> |
| <column name="dtype" index="housedtype" length="255" not-null="true"/> |
| </discriminator> |
| <version name="myversion" column="myversion" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler"> |
| <meta attribute="syntheticVersion">true</meta> |
| </version> |
| <many-to-one name="owner" entity-name="Parent" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="house_owner" insert="true" update="true" not-null="false"> |
| <column not-null="false" unique="false" name="`parent_owner_firstname`"/> |
| <column not-null="false" unique="false" name="`parent_owner_lastname`"/> |
| </many-to-one> |
| <list name="visitors" table="`house_person`" lazy="true" cascade="merge,persist,save-update,lock,refresh"> |
| <key update="true"> |
| <column name="`rightcolumn`" not-null="false" unique="false"/> |
| </key> |
| <list-index column="`house_visitors_idx`"/> |
| <many-to-many entity-name="Person" unique="true" foreign-key="house_visitors"> |
| <column name="`person_firstname`" not-null="true" unique="false"/> |
| <column name="`person_lastname`" not-null="true" unique="false"/> |
| </many-to-many> |
| </list> |
| </class> |
| </hibernate-mapping> |