Added author to all java files with class comments.
[utils] / mythtv / monitor / src / main / java / org / wamblee / mythtv / RecordingDatabase.java
index 7ff517096e2659c5bf7d6a6855c3d670e311b06c..6b9e531362221751dc47cb5a8e2cd47f446b01c0 100644 (file)
 
 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;
 
 /**
  * 
+ *
+ * @author Erik Brakkee
  */
-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<Recording>)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<Recording> result = (List<Recording>) 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<Recording> result = query.getResultList();
         if ( result.size() > 1 ) { 
             throw new RuntimeException("More than two recordings returned");
         }
@@ -68,6 +54,6 @@ public class RecordingDatabase extends HibernateDaoSupport {
     }
     
     public void update(Recording aRecording) { 
-        getHibernateTemplate().update(aRecording);
+        _entityManager.merge(aRecording);
     }
 }