]> git.somenet.org - pub/jan/dst18.git/blob - ass1-jpa/src/main/java/dst/ass1/jpa/dao/impl/DAOFactory.java
[1.1.1+1.3.1] model + dao(-stubs) + Material Listener.
[pub/jan/dst18.git] / ass1-jpa / src / main / java / dst / ass1 / jpa / dao / impl / DAOFactory.java
1 package dst.ass1.jpa.dao.impl;
2
3 import dst.ass1.jpa.dao.*;
4
5 import javax.persistence.EntityManager;
6
7 public class DAOFactory implements IDAOFactory {
8
9     /*
10      * HINT: When using the org.hibernate.Session in your DAOs you can extract it from the EntityManager reference with
11      * e.g., em.unwrap(org.hibernate.Session.class). Do not store this org.hibernate.Session in your DAOs, but unwrap it
12      * every time you actually need it.
13      */
14
15     private EntityManager em;
16
17     public DAOFactory(EntityManager em) {
18         this.em = em;
19     }
20
21     @Override
22     public IMembershipDAO createMembershipDAO() {
23         return new MembershipDAO(em);
24     }
25
26     @Override
27     public IParticipantDAO createParticipantDAO() {
28         return new ParticipantDAO(em);
29     }
30
31     @Override
32     public ILessonDAO createLessonDAO() {
33         return new LessonDAO(em);
34     }
35
36     @Override
37     public ILecturerDAO createLecturerDAO() {
38         return new LecturerDAO(em);
39     }
40
41     @Override
42     public IEnrollmentDAO createEnrollmentDAO() {
43         return new EnrollmentDAO(em);
44     }
45
46     @Override
47     public ICourseDAO createCourseDAO() {
48         return new CourseDAO(em);
49     }
50
51     @Override
52     public IMaterialDAO createMaterialDAO() {
53         return new MaterialDAO(em);
54     }
55
56     @Override
57     public IMaterialServerDAO createMaterialServerDAO() {
58         return new MaterialServerDAO(em);
59     }
60
61     @Override
62     public IMetadataDAO createMetadataDAO() {
63         return new MetadataDAO(em);
64     }
65
66     @Override
67     public ICoursePlatformDAO createCoursePlatformDAO() {
68         return new CoursePlatformDAO(em);
69     }
70 }