File: /var/www/html/unitime/JavaSource/PitSchedulingSubpart.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="PitSchedulingSubpart" table="pit_sched_subpart" >
<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">point_in_time_seq</param>
</generator>
</id>
<property
name="minutesPerWk"
column="min_per_wk"
type="java.lang.Integer"
not-null="true"
length="4"/>
<property
name="studentAllowOverlap"
column="student_allow_overlap"
type="java.lang.Boolean"
not-null="true"/>
<property
name="schedulingSubpartSuffixCache"
column="subpart_suffix"
type="java.lang.String"
not-null="false"
length="5"/>
<many-to-one
name="creditType"
column="credit_type"
class="CourseCreditType"
not-null="false"/>
<many-to-one
name="creditUnitType"
column="credit_unit_type"
class="CourseCreditUnitType"
not-null="false"/>
<property
name="credit"
column="credit"
type="java.lang.Float"
not-null="false"/>
<property
name="courseName"
type="java.lang.String"
formula="(select concat( concat( sa.subject_area_abbreviation , ' ') , co.course_nbr) from %SCHEMA%.pit_sched_subpart s, %SCHEMA%.pit_instr_offer_config c, %SCHEMA%.pit_instr_offering io, %SCHEMA%.pit_course_offering co, %SCHEMA%.subject_area sa where s.uniqueid=uniqueid and s.pit_config_id=c.uniqueid and c.pit_instr_offr_id=io.uniqueid and co.is_control = %TRUE% and co.pit_instr_offr_id=io.uniqueid and co.subject_area_id=sa.uniqueid)"
update="false"
insert="false"/>
<many-to-one
name="itype"
class="ItypeDesc"
column="itype"
not-null="true"
insert="true"
update="true"
foreign-key="fk_pit_ss_to_itype"/>
<many-to-one
name="schedulingSubpart"
class="SchedulingSubpart"
column="scheduling_subpart_id"
not-null="false"
insert="true"
update="true"
foreign-key="fk_pit_ss_to_ss"/>
<set
name="pitChildSubparts"
inverse="true"
lazy="true"
cascade="all-delete-orphan"
table="pit_sched_subpart"
order-by="uniqueid">
<cache include="non-lazy" usage="transactional"/>
<key column="pit_parent_id"/>
<one-to-many class="PitSchedulingSubpart"/>
</set>
<many-to-one
name="pitParentSubpart"
class="PitSchedulingSubpart"
column="pit_parent_id"
not-null="false"
insert="true"
update="true"
foreign-key="fk_pit_ss_to_parent_pit_ss"/>
<many-to-one
name="pitInstrOfferingConfig"
class="PitInstrOfferingConfig"
column="pit_config_id"
not-null="true"
insert="true"
update="true"
lazy="proxy"
foreign-key="fk_pit_ss_to_pit_ioc"/>
<set
name="pitClasses"
inverse="true"
lazy="true"
cascade="all-delete-orphan"
table="pit_class"
order-by="uniqueid">
<cache include="non-lazy" usage="transactional"/>
<key column="pit_subpart_id"/>
<one-to-many class="PitClass"/>
</set>
<!-- TODO: ???? should credit configs be stored?
<set
name="creditConfigs"
inverse="true"
lazy="true"
cascade="all-delete-orphan"
table="course_credit_unit_config">
<cache include="non-lazy" usage="transactional"/>
<key column="owner_id"/>
<one-to-many class="CourseCreditUnitConfig"/>
</set>
-->
<property
name="uniqueIdRolledForwardFrom"
column="uid_rolled_fwd_from"
type="java.lang.Long"
not-null="false"
length="20"/>
</class>
</hibernate-mapping>