1 5 package org.exoplatform.services.organization.hibernate; 6 7 import java.util.Collection ; 8 import java.util.Date ; 9 import java.util.List ; 10 11 import net.sf.hibernate.Hibernate; 12 import net.sf.hibernate.Session; 13 14 import org.exoplatform.services.database.HibernateService; 15 import org.exoplatform.services.organization.MembershipType; 16 import org.exoplatform.services.organization.impl.MembershipTypeImpl; 17 26 public class MembershipTypeQueryHandler { 27 private static final String queryFindMembershipType = 28 "from m in class org.exoplatform.services.organization.impl.MembershipTypeImpl, " + 29 "where m.name = ? " ; 30 private static final String queryFindAllMembershipType = 31 "from m in class org.exoplatform.services.organization.impl.MembershipTypeImpl"; 32 33 private HibernateService service_ ; 34 35 public MembershipTypeQueryHandler(HibernateService service) { 36 service_ = service ; 37 } 38 39 public MembershipType createMembershipType(MembershipType mt) throws Exception { 40 Session session = service_.openSession(); 41 Date now = new Date () ; 42 mt.setCreatedDate(now) ; 43 mt.setModifiedDate(now) ; 44 session.save(mt); 45 session.flush(); 46 return mt ; 47 } 48 49 public MembershipType saveMembershipType(MembershipType mt) throws Exception { 50 Session session = service_.openSession(); 51 Date now = new Date () ; 52 mt.setModifiedDate(now) ; 53 session.update(mt); 54 session.flush(); 55 return mt ; 56 } 57 58 public MembershipType findMembershipType(String name) throws Exception { 59 Session session = service_.openSession(); 60 MembershipType m = (MembershipType) service_.findOne(session,queryFindMembershipType, name); 61 return m; 62 } 63 64 public MembershipType removeMembershipType(String name) throws Exception { 65 Session session = service_.openSession(); 66 MembershipTypeImpl m = (MembershipTypeImpl)session.get(MembershipTypeImpl.class, name); 67 if (m != null) { 68 session.delete("from m in class org.exoplatform.services.organization.impl.MembershipImpl, " + 69 "where m.membershipType = '" + name + "'") ; 70 session.delete(m); 71 session.flush(); 72 } 73 return m; 74 } 75 76 static void removeMembershipTypeEntry(String name, Session session) throws Exception { 77 session.delete(queryFindMembershipType, name, Hibernate.STRING); 78 session.delete("from m in class org.exoplatform.services.organization.impl.MembershipImpl, " + 79 "where m.membershipType = '" + name + "'") ; 80 } 81 82 83 public Collection findMembershipTypes() throws Exception { 84 Session session = service_.openSession(); 85 List memberships = session.find( queryFindAllMembershipType); 86 return memberships; 87 } 88 } | Popular Tags |