1 package dst.ass1.jpa.dao.impl;
3 import javax.persistence.EntityManager;
5 import dst.ass1.jpa.dao.ICourseDAO;
6 import dst.ass1.jpa.dao.ICoursePlatformDAO;
7 import dst.ass1.jpa.dao.IDAOFactory;
8 import dst.ass1.jpa.dao.IEnrollmentDAO;
9 import dst.ass1.jpa.dao.ILecturerDAO;
10 import dst.ass1.jpa.dao.ILessonDAO;
11 import dst.ass1.jpa.dao.IMaterialDAO;
12 import dst.ass1.jpa.dao.IMaterialServerDAO;
13 import dst.ass1.jpa.dao.IMembershipDAO;
14 import dst.ass1.jpa.dao.IMetadataDAO;
15 import dst.ass1.jpa.dao.IParticipantDAO;
17 public class DAOFactory implements IDAOFactory {
20 * HINT: When using the org.hibernate.Session in your DAOs you can extract it from the EntityManager reference with
21 * e.g., em.unwrap(org.hibernate.Session.class). Do not store this org.hibernate.Session in your DAOs, but unwrap it
22 * every time you actually need it.
25 private EntityManager em;
27 public DAOFactory(EntityManager em) {
32 public IMembershipDAO createMembershipDAO() {
38 public IParticipantDAO createParticipantDAO() {
44 public ILessonDAO createLessonDAO() {
50 public ILecturerDAO createLecturerDAO() {
56 public IEnrollmentDAO createEnrollmentDAO() {
62 public ICourseDAO createCourseDAO() {
68 public IMaterialDAO createMaterialDAO() {
74 public IMaterialServerDAO createMaterialServerDAO() {
80 public IMetadataDAO createMetadataDAO() {
86 public ICoursePlatformDAO createCoursePlatformDAO() {