View Javadoc

1   package nl.gridshore.samples.training.domain;
2   
3   import javax.persistence.*;
4   import java.util.Set;
5   import java.util.List;
6   import java.util.ArrayList;
7   
8   /**
9    * Created by IntelliJ IDEA.
10   * User: jettro
11   * Date: Jan 18, 2008
12   * Time: 11:37:18 PM
13   * Domain class representing a training object
14   */
15  @Entity
16  @Table (name = "to_training")
17  public class Training extends BaseDomain {
18      private String name;
19      private String code;
20      private String remark;
21  
22      @OneToMany(mappedBy = "training", fetch = FetchType.LAZY, cascade = {CascadeType.ALL, CascadeType.REMOVE})
23      private List<TrainingSession> sessions = new ArrayList<TrainingSession>();
24  
25      public String getName() {
26          return name;
27      }
28  
29      public void setName(String name) {
30          this.name = name;
31      }
32  
33      public String getCode() {
34          return code;
35      }
36  
37      public void setCode(String code) {
38          this.code = code;
39      }
40  
41      public String getRemark() {
42          return remark;
43      }
44  
45      public void setRemark(String remark) {
46          this.remark = remark;
47      }
48  
49      public List<TrainingSession> getSessions() {
50          return sessions;
51      }
52  
53      public void setSessions(List<TrainingSession> sessions) {
54          this.sessions = sessions;
55      }
56  
57      public void addTrainingSession(TrainingSession trainingSession) {
58          trainingSession.setTraining(this);
59          this.sessions.add(trainingSession);
60      }
61  
62      public void removeTrainingSession(TrainingSession trainingSession) {
63          trainingSession.setTraining(null);
64          this.sessions.remove(trainingSession);
65      }
66  }