File: /var/www/html/unitime/target/classes/TimetableManager.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="TimetableManager"
abstract="false"
table="timetable_manager">
<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">timetable_mgr_seq</param>
</generator>
</id>
<property
name="externalUniqueId"
column="external_uid"
type="string"
not-null="false"
length="40"/>
<set
name="settings"
table="manager_settings"
cascade="all-delete-orphan"
lazy="true"
inverse="true">
<cache include="non-lazy" usage="transactional"/>
<key column="user_uniqueid"/>
<one-to-many class="ManagerSettings"/>
</set>
<property
name="firstName"
column="first_name"
type="string"
not-null="true"
length="100"/>
<property
name="middleName"
column="middle_name"
type="string"
not-null="false"
length="100"/>
<property
name="lastName"
column="last_name"
type="string"
not-null="true"
length="100"/>
<property
name="academicTitle"
column="acad_title"
type="java.lang.String"
not-null="false"
length="50"/>
<property
name="emailAddress"
column="email_address"
type="string"
not-null="false"
length="200"/>
<set name="departments" table="dept_to_tt_mgr" inverse="true">
<cache include="non-lazy" usage="transactional"/>
<key column="timetable_mgr_id"/>
<many-to-many
class="Department"
column="department_id"
foreign-key="fk_dept_mgr_to_dept"/>
</set>
<set
name="managerRoles"
lazy="true"
cascade="all-delete-orphan"
inverse="true">
<cache include="non-lazy" usage="transactional"/>
<key column="manager_id" not-null="true"/>
<one-to-many class="ManagerRole"/>
</set>
<set name="solverGroups" table="solver_gr_to_tt_mgr" inverse="true">
<cache include="non-lazy" usage="transactional"/>
<key column="timetable_mgr_id"/>
<many-to-many
class="SolverGroup"
column="solver_group_id"
foreign-key="fk_solver_gr_to_tt_mgr_sg"/>
</set>
</class>
</hibernate-mapping>