File: /var/www/html/unitime/JavaSource/Assignment.hbm.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">
<!--
* Licensed to The Apereo Foundation under one or more contributor license
* agreements. See the NOTICE file distributed with this work for
* additional information regarding copyright ownership.
*
* The Apereo Foundation licenses this file to you under the Apache License,
* Version 2.0 (the "License"); you may not use this file except in
* compliance with the License. You may obtain a copy of the License at:
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
*
* See the License for the specific language governing permissions and
* limitations under the License.
*
-->
<hibernate-mapping package="org.unitime.timetable.model">
<class name="Assignment" table="assignment">
<cache include="non-lazy" usage="transactional"/>
<id
name="uniqueId"
column="uniqueid"
type="java.lang.Long">
<generator class="org.unitime.commons.hibernate.id.UniqueIdGenerator">
<param name="sequence">assignment_seq</param>
</generator>
</id>
<property
name="days"
column="days"
type="java.lang.Integer"
not-null="false"
length="4"/>
<property
name="startSlot"
column="slot"
type="java.lang.Integer"
not-null="false"
length="4"/>
<property
name="className"
column="class_name"
type="java.lang.String"
not-null="false"
length="100"/>
<many-to-one
name="timePattern"
class="TimePattern"
column="time_pattern_id"
not-null="true"
foreign-key="fk_assignment_time_pattern"/>
<many-to-one
name="datePattern"
class="DatePattern"
column="date_pattern_id"
not-null="true"
foreign-key="fk_assignment_date_pattern"/>
<many-to-one
name="solution"
class="Solution"
column="solution_id"
not-null="true"
foreign-key="fk_assignment_solution"/>
<set
name="instructors"
lazy="true"
table="assigned_instructors">
<cache include="non-lazy" usage="transactional"/>
<key column="assignment_id"/>
<many-to-many
class="DepartmentalInstructor"
column="instructor_id"
foreign-key="fk_assigned_instructor"/>
</set>
<set
name="rooms"
lazy="false"
table="assigned_rooms">
<cache include="non-lazy" usage="transactional"/>
<key column="assignment_id"/>
<many-to-many class="Location" column="room_id"/>
</set>
<many-to-one
name="clazz"
class="Class_"
column="class_id"
lazy="false"
not-null="true"
foreign-key="fk_assignment_class"/>
<set
name="assignmentInfo"
inverse="true"
cascade="all"
lazy="true"
table="solver_info">
<cache include="non-lazy" usage="transactional"/>
<key column="assignment_id"/>
<one-to-many class="AssignmentInfo"/>
</set>
<set
name="constraintInfo"
inverse="true"
lazy="true"
cascade="delete-orphan"
table="constraint_info">
<cache include="non-lazy" usage="transactional"/>
<key column="assignment_id"/>
<many-to-many
class="ConstraintInfo"
column="solver_info_id"
foreign-key="fk_constraint_info_solver"/>
</set>
</class>
</hibernate-mapping>