1 package dst.ass1.jpa.dao.impl;
3 import dst.ass1.jpa.dao.*;
5 import javax.persistence.EntityManager;
7 public class DAOFactory implements IDAOFactory {
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.
15 private EntityManager em;
17 public DAOFactory(EntityManager em) {
22 public IMembershipDAO createMembershipDAO() {
23 return new MembershipDAO(em);
27 public IParticipantDAO createParticipantDAO() {
28 return new ParticipantDAO(em);
32 public ILessonDAO createLessonDAO() {
33 return new LessonDAO(em);
37 public ILecturerDAO createLecturerDAO() {
38 return new LecturerDAO(em);
42 public IEnrollmentDAO createEnrollmentDAO() {
43 return new EnrollmentDAO(em);
47 public ICourseDAO createCourseDAO() {
48 return new CourseDAO(em);
52 public IMaterialDAO createMaterialDAO() {
53 return new MaterialDAO(em);
57 public IMaterialServerDAO createMaterialServerDAO() {
58 return new MaterialServerDAO(em);
62 public IMetadataDAO createMetadataDAO() {
63 return new MetadataDAO(em);
67 public ICoursePlatformDAO createCoursePlatformDAO() {
68 return new CoursePlatformDAO(em);