|
From: Pelle B. <pe...@us...> - 2004-03-22 23:31:32
|
Update of /cvsroot/neuclear/neuclear-ledger-hibernate/src/java/org/neuclear/ledger/hibernate In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv26291/src/java/org/neuclear/ledger/hibernate Modified Files: HibernateLedger.java Log Message: Working on Hibernate Implementation. Index: HibernateLedger.java =================================================================== RCS file: /cvsroot/neuclear/neuclear-ledger-hibernate/src/java/org/neuclear/ledger/hibernate/HibernateLedger.java,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** HibernateLedger.java 22 Mar 2004 22:49:16 -0000 1.1.1.1 --- HibernateLedger.java 22 Mar 2004 23:21:12 -0000 1.2 *************** *** 7,10 **** --- 7,14 ---- package org.neuclear.ledger.hibernate; + import net.sf.hibernate.HibernateException; + import net.sf.hibernate.Session; + import net.sf.hibernate.SessionFactory; + import net.sf.hibernate.cfg.Configuration; import org.neuclear.ledger.*; import org.neuclear.ledger.browser.BookBrowser; *************** *** 24,27 **** --- 28,40 ---- public HibernateLedger(final String id) throws LowlevelLedgerException, UnknownLedgerException { super(id); + + try { + Configuration cfg = new Configuration() + .addClass(PostedTransaction.class) + .addClass(PostedHeldTransaction.class); + factory = cfg.buildSessionFactory(); + } catch (HibernateException e) { + throw new LowlevelLedgerException(e); + } } *************** *** 34,38 **** */ public PostedTransaction performTransaction(UnPostedTransaction trans) throws UnBalancedTransactionException, LowlevelLedgerException, InvalidTransactionException { ! return null; } --- 47,63 ---- */ public PostedTransaction performTransaction(UnPostedTransaction trans) throws UnBalancedTransactionException, LowlevelLedgerException, InvalidTransactionException { ! if (!trans.isBalanced()) ! throw new UnBalancedTransactionException(this, trans); ! try { ! Session ses = factory.openSession(); ! net.sf.hibernate.Transaction t = ses.beginTransaction(); ! PostedTransaction posted = new PostedTransaction(trans, new Date()); ! ses.saveOrUpdate(posted); ! t.commit(); ! ses.close(); ! return posted; ! } catch (HibernateException e) { ! throw new LowlevelLedgerException(e); ! } } *************** *** 175,177 **** --- 200,204 ---- } + private final SessionFactory factory; + } |