1 package dst.ass1.jpa.model.impl;
3 import dst.ass1.jpa.model.ICourse;
4 import dst.ass1.jpa.model.ILecturer;
5 import dst.ass1.jpa.model.ILesson;
6 import dst.ass1.jpa.util.Constants;
8 import javax.persistence.*;
9 import java.util.ArrayList;
10 import java.util.Collection;
13 @Table(name = Constants.T_LECTURER)
14 public class Lecturer extends Person implements ILecturer {
15 @OneToMany(targetEntity = Course.class)
16 private Collection<ICourse> courses = new ArrayList<>();
18 @ManyToMany(targetEntity = Lesson.class)
19 @JoinTable(name = Constants.J_LECTURER_LESSON,
21 @JoinColumn(name = Constants.I_LECTURER)
23 inverseJoinColumns = {
24 @JoinColumn(name = Constants.I_LESSON)
26 private Collection<ILesson> lessons = new ArrayList<>();
30 public Collection<ICourse> getCourses() {
35 public void setCourses(Collection<ICourse> courses) {
36 this.courses = courses;
40 public void addCourse(ICourse course) {
41 this.courses.add(course);
45 public Collection<ILesson> getLessons() {
50 public void setLessons(Collection<ILesson> lessons) {
51 this.lessons = lessons;
55 public void addLesson(ILesson lesson) {
56 this.lessons.add(lesson);