diff --git a/edexOsgi/build.edex/esb/conf/db/hibernateConfig/maps/hibernate.cfg.xml b/edexOsgi/build.edex/esb/conf/db/hibernateConfig/maps/hibernate.cfg.xml
index dd5fd7930c..54e22c0311 100644
--- a/edexOsgi/build.edex/esb/conf/db/hibernateConfig/maps/hibernate.cfg.xml
+++ b/edexOsgi/build.edex/esb/conf/db/hibernateConfig/maps/hibernate.cfg.xml
@@ -31,7 +31,7 @@
org.postgresql.Driver
- org.hibernatespatial.postgis.PostgisDialect
+ org.hibernate.spatial.dialect.postgis.PostgisDialect
jdbc:postgresql://${db.addr}:${db.port}/maps
diff --git a/edexOsgi/build.edex/esb/conf/db/hibernateConfig/metadata/hibernate.cfg.xml b/edexOsgi/build.edex/esb/conf/db/hibernateConfig/metadata/hibernate.cfg.xml
index 527e03560e..84e86818af 100644
--- a/edexOsgi/build.edex/esb/conf/db/hibernateConfig/metadata/hibernate.cfg.xml
+++ b/edexOsgi/build.edex/esb/conf/db/hibernateConfig/metadata/hibernate.cfg.xml
@@ -31,7 +31,7 @@
org.postgresql.Driver
- org.hibernatespatial.postgis.PostgisDialect
+ org.hibernate.spatial.dialect.postgis.PostgisDialect
jdbc:postgresql://${db.addr}:${db.port}/metadata
diff --git a/edexOsgi/build.edex/esb/conf/spring/edex-db.xml b/edexOsgi/build.edex/esb/conf/spring/edex-db.xml
index c764b51416..23f3f1dddd 100644
--- a/edexOsgi/build.edex/esb/conf/spring/edex-db.xml
+++ b/edexOsgi/build.edex/esb/conf/spring/edex-db.xml
@@ -37,7 +37,7 @@
+ class="org.springframework.orm.hibernate4.HibernateTransactionManager">
@@ -55,7 +55,7 @@
+ class="org.springframework.orm.hibernate4.HibernateTransactionManager">
diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/db/dao/GFED2DDao.java b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/db/dao/GFED2DDao.java
index c2f3cf286f..43f7c6b465 100644
--- a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/db/dao/GFED2DDao.java
+++ b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/db/dao/GFED2DDao.java
@@ -59,6 +59,7 @@ import com.raytheon.uf.edex.plugin.grid.dao.GridDao;
* where query for T (T%hr) returned TP6hr
* Jun 13, 2013 2044 randerso Cleaned up JavaDoc
* Aug 30, 2013 2298 rjpeter Make getPluginName abstract
+ * 10/16/2014 3454 bphillip Upgrading to Hibernate 4
*
*
*
@@ -130,7 +131,7 @@ public class GFED2DDao extends GridDao {
Session s = null;
try {
- s = getHibernateTemplate().getSessionFactory().openSession();
+ s = getSession();
// TODO: clean up so we only make one db query
SortedMap rawTimes = queryByParmId(d2dModelName,
refTime, d2dParmName, d2dLevel, s);
@@ -150,7 +151,7 @@ public class GFED2DDao extends GridDao {
try {
s.close();
} catch (Exception e) {
- statusHandler.error(
+ logger.error(
"Error occurred closing database session", e);
}
}
@@ -278,7 +279,7 @@ public class GFED2DDao extends GridDao {
List timeList = new ArrayList();
Session s = null;
try {
- s = getHibernateTemplate().getSessionFactory().openSession();
+ s = getSession();
SortedMap results = queryByParmId(d2dModelName,
refTime, d2dParmName, d2dLevel, s);
@@ -290,7 +291,7 @@ public class GFED2DDao extends GridDao {
try {
s.close();
} catch (Exception e) {
- statusHandler.error(
+ logger.error(
"Error occurred closing database session", e);
}
}
diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/db/dao/GFEDao.java b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/db/dao/GFEDao.java
index a640565d6e..e1ce7c2b28 100644
--- a/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/db/dao/GFEDao.java
+++ b/edexOsgi/com.raytheon.edex.plugin.gfe/src/com/raytheon/edex/plugin/gfe/db/dao/GFEDao.java
@@ -106,6 +106,7 @@ import com.raytheon.uf.edex.database.query.DatabaseQuery;
* 10/15/2013 #2446 randerso Added ORDER BY clause to getOverlappingTimes
* 06/12/14 #3244 randerso Improved error handling
* 09/21/2014 #3648 randerso Changed to do version purging when new databases are added
+ * 10/16/2014 3454 bphillip Upgrading to Hibernate 4
*
*
*
@@ -153,7 +154,7 @@ public class GFEDao extends DefaultPluginDao {
Session sess = null;
try {
- sess = getHibernateTemplate().getSessionFactory().openSession();
+ sess = getSession();
sess.setDefaultReadOnly(true);
int tries = 0;
Transaction tx = null;
@@ -202,7 +203,7 @@ public class GFEDao extends DefaultPluginDao {
try {
sess.close();
} catch (Exception e) {
- statusHandler.error(
+ logger.error(
"Error occurred closing database session", e);
}
}
@@ -242,7 +243,7 @@ public class GFEDao extends DefaultPluginDao {
Transaction tx = null;
try {
- sess = getHibernateTemplate().getSessionFactory().openSession();
+ sess = getSession();
sess.setDefaultReadOnly(true);
tx = sess.beginTransaction();
@@ -280,7 +281,7 @@ public class GFEDao extends DefaultPluginDao {
try {
sess.close();
} catch (Exception e) {
- statusHandler.error(
+ logger.error(
"Error occurred closing database session", e);
}
}
@@ -304,8 +305,7 @@ public class GFEDao extends DefaultPluginDao {
Transaction tx = null;
try {
- sess = getHibernateTemplate().getSessionFactory()
- .openStatelessSession();
+ sess = getSessionFactory().openStatelessSession();
tx = sess.beginTransaction();
for (ParmStorageInfo psi : psiList) {
@@ -331,7 +331,7 @@ public class GFEDao extends DefaultPluginDao {
try {
sess.close();
} catch (Exception e) {
- statusHandler.error(
+ logger.error(
"Error occurred closing database session", e);
}
}
@@ -351,8 +351,7 @@ public class GFEDao extends DefaultPluginDao {
Transaction tx = null;
try {
- sess = getHibernateTemplate().getSessionFactory()
- .openStatelessSession();
+ sess = getSessionFactory().openStatelessSession();
tx = sess.beginTransaction();
sess.update(psi);
tx.commit();
@@ -374,7 +373,7 @@ public class GFEDao extends DefaultPluginDao {
try {
sess.close();
} catch (Exception e) {
- statusHandler.error(
+ logger.error(
"Error occurred closing database session", e);
}
}
@@ -395,7 +394,7 @@ public class GFEDao extends DefaultPluginDao {
Session sess = null;
try {
- sess = getHibernateTemplate().getSessionFactory().openSession();
+ sess = getSession();
sess.setDefaultReadOnly(true);
// reattach so dbId doesn't requery
@@ -450,7 +449,7 @@ public class GFEDao extends DefaultPluginDao {
try {
sess.close();
} catch (Exception e) {
- statusHandler.error(
+ logger.error(
"Error occurred closing database session", e);
}
}
@@ -515,18 +514,18 @@ public class GFEDao extends DefaultPluginDao {
try {
removed = txTemplate
.execute(new TransactionCallback>() {
+ @SuppressWarnings("unchecked")
@Override
public List doInTransaction(
TransactionStatus status) {
Date purgeDate = new Date(
System.currentTimeMillis()
- (REMOVED_DB_PURGE_TIME * TimeUtil.MILLIS_PER_DAY));
- @SuppressWarnings("unchecked")
- List removed = getHibernateTemplate()
- .find("FROM DatabaseID where removedDate < ?",
- purgeDate);
-
- return removed;
+ return getCurrentSession()
+ .createQuery(
+ "FROM DatabaseID where removedDate < :removedDate")
+ .setParameter("removedDate", purgeDate)
+ .list();
}
});
} catch (Exception e) {
@@ -555,8 +554,10 @@ public class GFEDao extends DefaultPluginDao {
return txTemplate.execute(new TransactionCallback() {
@Override
public Integer doInTransaction(TransactionStatus status) {
- return getHibernateTemplate().bulkUpdate(
- "DELETE FROM DatabaseID WHERE siteId = ?", siteID);
+ return getCurrentSession()
+ .createQuery(
+ "DELETE FROM DatabaseID WHERE siteId = :siteId")
+ .setParameter("siteId", siteID).executeUpdate();
}
});
}
@@ -579,8 +580,7 @@ public class GFEDao extends DefaultPluginDao {
Transaction tx = null;
try {
- sess = getHibernateTemplate().getSessionFactory()
- .openStatelessSession();
+ sess = getSessionFactory().openStatelessSession();
tx = sess.beginTransaction();
for (GFERecord rec : records) {
// TODO: Update saving a record, currently causes 2 inserts and
@@ -608,7 +608,7 @@ public class GFEDao extends DefaultPluginDao {
try {
sess.close();
} catch (Exception e) {
- statusHandler.error(
+ logger.error(
"Error occurred closing database session", e);
}
}
@@ -632,8 +632,7 @@ public class GFEDao extends DefaultPluginDao {
}
try {
- sess = getHibernateTemplate().getSessionFactory()
- .openStatelessSession();
+ sess = getSessionFactory().openStatelessSession();
tx = sess.beginTransaction();
// Update insert time
@@ -690,7 +689,7 @@ public class GFEDao extends DefaultPluginDao {
try {
sess.close();
} catch (Exception e) {
- statusHandler.error(
+ logger.error(
"Error occurred closing database session", e);
}
}
@@ -713,15 +712,14 @@ public class GFEDao extends DefaultPluginDao {
try {
return txTemplate
.execute(new TransactionCallback>() {
+ @SuppressWarnings("unchecked")
@Override
public List doInTransaction(
TransactionStatus status) {
- @SuppressWarnings("unchecked")
- List result = getHibernateTemplate()
- .find("FROM DatabaseID WHERE siteId = ? AND removeddate is null",
- siteId);
-
- return result;
+ return getCurrentSession()
+ .createQuery(
+ "FROM DatabaseID WHERE siteId = :siteId AND removeddate is null")
+ .setParameter("siteId", siteId).list();
}
});
} catch (Exception e) {
@@ -746,7 +744,7 @@ public class GFEDao extends DefaultPluginDao {
Transaction tx = null;
try {
- sess = getHibernateTemplate().getSessionFactory().openSession();
+ sess = getSession();
sess.setDefaultReadOnly(true);
tx = sess.beginTransaction();
@@ -776,7 +774,7 @@ public class GFEDao extends DefaultPluginDao {
try {
sess.close();
} catch (Exception e) {
- statusHandler.error(
+ logger.error(
"Error occurred closing database session", e);
}
}
@@ -801,7 +799,7 @@ public class GFEDao extends DefaultPluginDao {
try {
// stateless session so we can bulk query histories instead of once
// per record via hibernate
- sess = getHibernateTemplate().getSessionFactory().openSession();
+ sess = getSession();
sess.setDefaultReadOnly(true);
tx = sess.beginTransaction();
@@ -837,7 +835,7 @@ public class GFEDao extends DefaultPluginDao {
try {
sess.close();
} catch (Exception e) {
- statusHandler.error(
+ logger.error(
"Error occurred closing database session", e);
}
}
@@ -867,8 +865,7 @@ public class GFEDao extends DefaultPluginDao {
Transaction tx = null;
try {
- sess = getHibernateTemplate().getSessionFactory()
- .openStatelessSession();
+ sess = getSessionFactory().openStatelessSession();
tx = sess.beginTransaction();
Query query = sess
.createQuery("DELETE FROM GFERecord WHERE parmId = :parmId"
@@ -878,7 +875,7 @@ public class GFEDao extends DefaultPluginDao {
int rowsDeleted = query.executeUpdate();
tx.commit();
tx = null;
- statusHandler.info("Deleted " + rowsDeleted
+ logger.info("Deleted " + rowsDeleted
+ " records from the database.");
Map, String[]>> fileMap = GfeUtil
@@ -893,19 +890,19 @@ public class GFEDao extends DefaultPluginDao {
try {
dataStore.deleteGroups(groupsToDelete);
- if (statusHandler.isPriorityEnabled(Priority.DEBUG)) {
- statusHandler.handle(Priority.DEBUG, "Deleted: "
+ if (logger.isPriorityEnabled(Priority.DEBUG)) {
+ logger.handle(Priority.DEBUG, "Deleted: "
+ Arrays.toString(groupsToDelete) + " from "
+ hdf5File.getName());
}
} catch (Exception e) {
- statusHandler.handle(Priority.WARN,
+ logger.handle(Priority.WARN,
"Error deleting hdf5 record(s) from file: "
+ hdf5File.getPath(), e);
}
}
} catch (Exception e) {
- statusHandler.error("Error deleting database record(s) for parmId "
+ logger.error("Error deleting database record(s) for parmId "
+ parmId + " timeRanges " + times, e);
if (tx != null) {
@@ -920,7 +917,7 @@ public class GFEDao extends DefaultPluginDao {
try {
sess.close();
} catch (Exception e) {
- statusHandler.error(
+ logger.error(
"Error occurred closing database session", e);
}
}
@@ -940,14 +937,14 @@ public class GFEDao extends DefaultPluginDao {
try {
return txTemplate
.execute(new TransactionCallback>() {
+ @SuppressWarnings("unchecked")
@Override
public List doInTransaction(
TransactionStatus status) {
- @SuppressWarnings("unchecked")
- List result = getHibernateTemplate()
- .find("SELECT dataTime.validPeriod FROM GFERecord WHERE parmId = ? ORDER BY dataTime.validPeriod.start",
- parmId);
- return result;
+ return getCurrentSession()
+ .createQuery(
+ "SELECT dataTime.validPeriod FROM GFERecord WHERE parmId = :parmId ORDER BY dataTime.validPeriod.start")
+ .setParameter("parmId", parmId).list();
}
});
} catch (Exception e) {
@@ -972,19 +969,19 @@ public class GFEDao extends DefaultPluginDao {
try {
return txTemplate
.execute(new TransactionCallback>() {
+ @SuppressWarnings("unchecked")
@Override
public List doInTransaction(
TransactionStatus status) {
- @SuppressWarnings("unchecked")
- List rval = getHibernateTemplate()
- .find("SELECT dataTime.validPeriod"
- + " FROM GFERecord WHERE parmId = ?"
- + " AND dataTime.validPeriod.start < ?"
- + " AND dataTime.validPeriod.end > ?"
- + " ORDER BY dataTime.validPeriod.start",
- new Object[] { parmId, tr.getEnd(),
- tr.getStart() });
- return rval;
+ Query query = getCurrentSession().createQuery("SELECT dataTime.validPeriod"
+ + " FROM GFERecord WHERE parmId = :parmId"
+ + " AND dataTime.validPeriod.start < :start"
+ + " AND dataTime.validPeriod.end > :end"
+ + " ORDER BY dataTime.validPeriod.start");
+ query.setParameter("parmId", parmId);
+ query.setParameter("start", tr.getEnd());
+ query.setParameter("end", tr.getStart());
+ return query.list();
}
});
} catch (Exception e) {
@@ -1020,7 +1017,7 @@ public class GFEDao extends DefaultPluginDao {
Transaction tx = null;
try {
- sess = getHibernateTemplate().getSessionFactory()
+ sess = getSessionFactory()
.openStatelessSession();
tx = sess.beginTransaction();
@@ -1059,7 +1056,7 @@ public class GFEDao extends DefaultPluginDao {
try {
sess.close();
} catch (Exception e) {
- statusHandler.error(
+ logger.error(
"Error occurred closing database session", e);
}
}
@@ -1080,7 +1077,7 @@ public class GFEDao extends DefaultPluginDao {
Session sess = null;
boolean purged = false;
try {
- sess = getHibernateTemplate().getSessionFactory().openSession();
+ sess = getSessionFactory().openSession();
Transaction tx = sess.beginTransaction();
Object toDelete = sess.get(DatabaseID.class, dbId.getId(),
LockOptions.UPGRADE);
@@ -1092,13 +1089,13 @@ public class GFEDao extends DefaultPluginDao {
tx.commit();
purged = true;
} catch (Exception e) {
- statusHandler.error("Error purging " + dbId, e);
+ logger.error("Error purging " + dbId, e);
} finally {
if (sess != null) {
try {
sess.close();
} catch (Exception e) {
- statusHandler.error(
+ logger.error(
"Error occurred closing database session", e);
}
}
@@ -1159,7 +1156,7 @@ public class GFEDao extends DefaultPluginDao {
Transaction tx = null;
try {
- sess = getHibernateTemplate().getSessionFactory()
+ sess = getSessionFactory()
.openStatelessSession();
tx = sess.beginTransaction();
Query q = sess
@@ -1182,7 +1179,7 @@ public class GFEDao extends DefaultPluginDao {
try {
sess.close();
} catch (Exception e) {
- statusHandler.error(
+ logger.error(
"Error occurred closing database session", e);
}
}
@@ -1208,7 +1205,7 @@ public class GFEDao extends DefaultPluginDao {
List