comparison flys-artifacts/src/main/java/org/dive4elements/river/artifacts/services/FLYSService.java @ 5831:bd047b71ab37

Repaired internal references
author Sascha L. Teichmann <teichmann@intevation.de>
date Thu, 25 Apr 2013 12:06:39 +0200
parents flys-artifacts/src/main/java/de/intevation/flys/artifacts/services/FLYSService.java@247f3e98a14b
children
comparison
equal deleted inserted replaced
5830:160f53ee0870 5831:bd047b71ab37
1 package org.dive4elements.river.artifacts.services;
2
3 import org.w3c.dom.Document;
4
5 import org.apache.log4j.Logger;
6
7 import org.hibernate.Session;
8
9 import org.dive4elements.artifacts.CallMeta;
10 import org.dive4elements.artifacts.GlobalContext;
11
12 import org.dive4elements.artifactdatabase.XMLService;
13
14 import org.dive4elements.river.backend.SessionHolder;
15
16
17 public abstract class FLYSService extends XMLService {
18
19 private static final Logger logger = Logger.getLogger(FLYSService.class);
20
21
22 @Override
23 public Document processXML(
24 Document data,
25 GlobalContext globalContext,
26 CallMeta callMeta
27 ) {
28 init();
29
30 try {
31 return doProcess(data, globalContext, callMeta);
32 }
33 finally {
34 shutdown();
35 }
36 }
37
38
39 protected abstract Document doProcess(
40 Document data,
41 GlobalContext globalContext,
42 CallMeta callMeta);
43
44
45 protected void init() {
46 logger.debug("init");
47 SessionHolder.acquire();
48 }
49
50
51 protected void shutdown() {
52 logger.debug("shutdown");
53 Session session = SessionHolder.HOLDER.get();
54 session.close();
55
56 SessionHolder.release();
57 }
58 }
59 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf-8 :

http://dive4elements.wald.intevation.org