X-Git-Url: http://wamblee.org/gitweb/?a=blobdiff_plain;f=mythtv%2Fmonitor%2Fsrc%2Fmain%2Fjava%2Forg%2Fwamblee%2Fmythtv%2FRecordingDatabase.java;h=aafa25378cc4259536cdf43af141efbe933995aa;hb=cf25a3646c663c5aadbd2de8c23840550b18125b;hp=7ff517096e2659c5bf7d6a6855c3d670e311b06c;hpb=03947cccfab5ffc636d5ce8262438cbed258ab5a;p=utils diff --git a/mythtv/monitor/src/main/java/org/wamblee/mythtv/RecordingDatabase.java b/mythtv/monitor/src/main/java/org/wamblee/mythtv/RecordingDatabase.java index 7ff51709..aafa2537 100644 --- a/mythtv/monitor/src/main/java/org/wamblee/mythtv/RecordingDatabase.java +++ b/mythtv/monitor/src/main/java/org/wamblee/mythtv/RecordingDatabase.java @@ -16,48 +16,32 @@ package org.wamblee.mythtv; -import java.sql.SQLException; -import java.util.HashMap; import java.util.List; -import java.util.Map; + +import javax.persistence.EntityManager; +import javax.persistence.Query; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; -import org.hibernate.HibernateException; -import org.hibernate.Session; -import org.hibernate.criterion.Expression; -import org.springframework.orm.hibernate3.HibernateCallback; -import org.springframework.orm.hibernate3.support.HibernateDaoSupport; /** * */ -public class RecordingDatabase extends HibernateDaoSupport { +public class RecordingDatabase { private static final Log LOG = LogFactory.getLog(RecordingDatabase.class); - - public RecordingDatabase() { - // Empty - } - public void init() { - /* - for (Recording recording: (List)getHibernateTemplate().loadAll(Recording.class) ) { - LOG.info("Found recording " + recording); - } - LOG.info("After listing recordings"); - */ + private EntityManager _entityManager; + + public RecordingDatabase(EntityManager aEntityManager) { + _entityManager = aEntityManager; } public Recording findRecording(final String aName) { - List result = (List) getHibernateTemplate().execute(new HibernateCallback() { - /* (non-Javadoc) - * @see org.springframework.orm.hibernate3.HibernateCallback#doInHibernate(org.hibernate.Session) - */ - public Object doInHibernate(Session aSession) throws HibernateException, SQLException { - return aSession.createCriteria(Recording.class).add(Expression.eq("_basename", aName)).list(); - } - }); + Query query = _entityManager.createQuery( + "select r from Recording r where r.basename = ?1"); + query.setParameter(1, aName); + List result = query.getResultList(); if ( result.size() > 1 ) { throw new RuntimeException("More than two recordings returned"); } @@ -68,6 +52,6 @@ public class RecordingDatabase extends HibernateDaoSupport { } public void update(Recording aRecording) { - getHibernateTemplate().update(aRecording); + _entityManager.merge(aRecording); } }