restoring head
[mir.git] / source / org / codecoop / mir / core / model / Article.hbm.xml
diff --git a/source/org/codecoop/mir/core/model/Article.hbm.xml b/source/org/codecoop/mir/core/model/Article.hbm.xml
new file mode 100755 (executable)
index 0000000..736b912
--- /dev/null
@@ -0,0 +1,91 @@
+<?xml version="1.0"?>
+<!DOCTYPE hibernate-mapping PUBLIC
+    "-//Hibernate/Hibernate Mapping DTD 2.0//EN"
+    "http://hibernate.sourceforge.net/hibernate-mapping-2.0.dtd" >   \r
+
+<hibernate-mapping>
+       <joined-subclass extends="org.codecoop.mir.core.model.Media" 
+               name="org.codecoop.mir.core.model.Article"
+               table="article">
+               
+               <key column="media_id" foreign-key="fk_article_media"/>
+               
+               <property
+                       column="date"
+                       length="8"
+                       name="date"
+                       not-null="true"
+                       type="java.lang.String"
+                />
+               <property
+                       column="subtitle"
+                       length="255"
+                       name="subtitle"
+                       type="java.lang.String"
+                />
+               <property
+                       column="edittitle"
+                       length="255"
+                       name="edittitle"
+                       type="java.lang.String"
+                />     
+               <property
+                       name="content"
+                       type="java.lang.String">                        
+                       <column name="content" 
+                               sql-type="text"
+                               not-null="true"/>
+               </property>
+               <property
+                       column="is_html"
+                       length="1"
+                       name="html"
+                       not-null="true"
+                       type="boolean"
+                />
+               <!-- Associations -->
+               <many-to-one
+                       class="org.codecoop.mir.core.model.ArticleStatus"
+                       column="to_article_status"
+                       name="status"
+                       foreign-key="fk_article_articlestatus"                  
+                />                     
+               <many-to-one
+                       class="org.codecoop.mir.core.model.User"
+                       column="to_locking_user"
+                       name="lockingUser" 
+                       foreign-key="fk_article_lockinguser"
+               />
+               <many-to-one
+                       class="org.codecoop.mir.core.model.Language"
+                       column="to_language"
+                       name="language"
+                       foreign-key="fk_article_language"
+                />
+               <set name="typedCategories" table="article_x_category" inverse="false" cascade="save-update">
+                       <key column="article_id" 
+                               foreign-key="fk_article_category"/>
+                       <!--    
+                       <composite-element class="org.codecoop.mir.core.model.TypedCategory">
+                               <many-to-one 
+                                       class="org.codecoop.mir.core.model.ArticleType"
+                                       column="article_type_id"
+                                       name="articleType"
+                                       foreign-key="fk_articlexcategory_article_type"
+                               />
+                               <many-to-one 
+                                       class="org.codecoop.mir.core.model.Category"
+                                       column="category_id"
+                                       name="category"
+                                       foreign-key="fk_articlexcategory_category"
+                               />
+                       </composite-element>
+                       -->
+                       <many-to-many class="org.codecoop.mir.core.model.TypedCategory" 
+                               foreign-key="fk_articlexcategory">
+                               <column name="article_type_id"/>
+                               <column name="category_id"/>
+                       </many-to-many>
+               </set>  
+       </joined-subclass>
+</hibernate-mapping>