diff flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/AnnotationsFactory.java @ 311:ea3a438a7021

Backend access: Static methods are using the SessionHolder, too. flys-artifacts/trunk@1694 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Sascha L. Teichmann <sascha.teichmann@intevation.de>
date Thu, 14 Apr 2011 13:15:16 +0000
parents 1a00cb4998a8
children 94c176fdcb89
line wrap: on
line diff
--- a/flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/AnnotationsFactory.java	Thu Apr 14 13:11:12 2011 +0000
+++ b/flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/AnnotationsFactory.java	Thu Apr 14 13:15:16 2011 +0000
@@ -2,17 +2,13 @@
 
 import java.util.List;
 
-import de.intevation.flys.backend.SessionFactoryProvider;
-
 import de.intevation.flys.model.Annotation;
 import de.intevation.flys.model.Range;
 import de.intevation.flys.model.River;
 
-import org.hibernate.SessionFactory;
 import org.hibernate.Session;
 import org.hibernate.Query;
 
-
 /**
  * @author <a href="mailto:ingo.weinzierl@intevation.de">Ingo Weinzierl</a>
  */
@@ -24,23 +20,17 @@
 
 
     public static List<Annotation> getAnnotations(String river) {
-        SessionFactory sf = SessionFactoryProvider.getSessionFactory();
-        Session session   = sf.openSession();
+        Session session = SessionHolder.HOLDER.get();
 
-        try {
-            Query rangesQuery = session.createQuery(
-                "from Range where river.name=:name");
-            rangesQuery.setParameter("name", river);
-            List<Range> ranges = rangesQuery.list();
+        Query rangesQuery = session.createQuery(
+            "from Range where river.name=:name");
+        rangesQuery.setParameter("name", river);
+        List<Range> ranges = rangesQuery.list();
 
-            Query query = session.createQuery(
-                "from Annotation where range in (:ranges)");
-            query.setParameterList("ranges", ranges);
-            return query.list();
-        }
-        finally {
-            session.close();
-        }
+        Query query = session.createQuery(
+            "from Annotation where range in (:ranges)");
+        query.setParameterList("ranges", ranges);
+        return query.list();
     }
 }
 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf-8 :

http://dive4elements.wald.intevation.org