blob: 09169953d645ab4ee9d9a62bbd40398a023a4c4c [file] [log] [blame]
<?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>