1
2
3 package com.pnpconsult.zeiterfassung.helper;
4
5 import java.io.Serializable;
6
7 import net.sf.hibernate.HibernateException;
8 import net.sf.hibernate.Session;
9 import net.sf.hibernate.Transaction;
10
11 import com.pnpconsult.zeiterfassung.model.ArchivableObject;
12
13 /***
14 * @author <a href="mailto:powerpete@users.sf.net">M. Petersen</a>
15 * @version $Id: ArchivableObjectManager.java,v 1.4 2004/06/24 20:54:18 powerpete Exp $
16 */
17 public class ArchivableObjectManager extends AbstractObjectManager2
18 {
19 public void changeArchived(Class clazz, Serializable key)
20 throws HibernateException
21 {
22 Session session = SessionLocator.getSession();
23 Transaction tx = session.beginTransaction();
24 try
25 {
26 ArchivableObject obj = (ArchivableObject) session.load(clazz, key);
27 obj.setArchived(!obj.isArchived());
28 session.save(obj);
29 tx.commit();
30 }
31 catch (HibernateException e)
32 {
33 tx.rollback();
34 throw e;
35 }
36 finally
37 {
38 session.close();
39 }
40 }
41 }