diff flys-artifacts/src/main/java/de/intevation/flys/artifacts/services/MainValuesService.java @ 1631:26e19cdaed5e

Improved database session handling in services and artifacts. flys-artifacts/trunk@2807 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Ingo Weinzierl <ingo.weinzierl@intevation.de>
date Thu, 22 Sep 2011 10:07:22 +0000
parents a63d79107289
children ad54896ec369
line wrap: on
line diff
--- a/flys-artifacts/src/main/java/de/intevation/flys/artifacts/services/MainValuesService.java	Thu Sep 22 07:58:24 2011 +0000
+++ b/flys-artifacts/src/main/java/de/intevation/flys/artifacts/services/MainValuesService.java	Thu Sep 22 10:07:22 2011 +0000
@@ -7,18 +7,13 @@
 import org.w3c.dom.Document;
 import org.w3c.dom.Element;
 
-import org.hibernate.Session;
-
 import de.intevation.artifacts.CallMeta;
 import de.intevation.artifacts.GlobalContext;
 
-import de.intevation.artifactdatabase.DefaultService;
-
 import de.intevation.artifacts.common.ArtifactNamespaceContext;
 import de.intevation.artifacts.common.utils.XMLUtils;
 import de.intevation.artifacts.common.utils.XMLUtils.ElementCreator;
 
-import de.intevation.flys.backend.SessionHolder;
 import de.intevation.flys.model.Gauge;
 import de.intevation.flys.model.MainValue;
 import de.intevation.flys.model.MainValueType;
@@ -36,7 +31,7 @@
  *
  * @author <a href="mailto:ingo.weinzierl@intevation.de">Ingo Weinzierl</a>
  */
-public class MainValuesService extends DefaultService {
+public class MainValuesService extends FLYSService {
 
     /** The logger that is used by this service.*/
     private static Logger logger = Logger.getLogger(MainValuesService.class);
@@ -59,7 +54,7 @@
 
 
     @Override
-    public Document process(
+    public Document doProcess(
         Document      data,
         GlobalContext context,
         CallMeta      callMeta
@@ -171,22 +166,15 @@
             logger.debug("Gauge: " + gauge.getName());
         }
 
-        Session session = SessionHolder.acquire();
-        try {
-            List<MainValue> mainValues = MainValuesFactory.getMainValues(gauge);
-
-            if (mainValues == null || mainValues.isEmpty()) {
-                throw new NullPointerException("No main values found.");
-            }
+        List<MainValue> mainValues = MainValuesFactory.getMainValues(gauge);
 
-            logger.debug(mainValues.size() + " main values found.");
-
-            return mainValues;
+        if (mainValues == null || mainValues.isEmpty()) {
+            throw new NullPointerException("No main values found.");
         }
-        finally {
-            session.close();
-            SessionHolder.release();
-        }
+
+        logger.debug(mainValues.size() + " main values found.");
+
+        return mainValues;
     }
 
 

http://dive4elements.wald.intevation.org