comparison flys-artifacts/src/main/java/de/intevation/flys/artifacts/datacage/Recommendations.java @ 5590:b75005269a6c

Datacage: Fix potential connection leak to SedDB.
author Sascha L. Teichmann <teichmann@intevation.de>
date Mon, 08 Apr 2013 12:07:43 +0200
parents 3e8f7b4bdf20
children cf4cc385e7c6
comparison
equal deleted inserted replaced
5589:1827798ca53f 5590:b75005269a6c
18 18
19 import org.w3c.dom.Document; 19 import org.w3c.dom.Document;
20 import org.w3c.dom.Node; 20 import org.w3c.dom.Node;
21 21
22 import org.hibernate.Session; 22 import org.hibernate.Session;
23 import org.hibernate.SessionFactory;
23 24
24 import org.hibernate.jdbc.Work; 25 import org.hibernate.jdbc.Work;
25 26
26 import de.intevation.artifacts.common.utils.Config; 27 import de.intevation.artifacts.common.utils.Config;
27 import de.intevation.artifacts.common.utils.XMLUtils; 28 import de.intevation.artifacts.common.utils.XMLUtils;
28 import de.intevation.artifacts.common.utils.StringUtils; 29 import de.intevation.artifacts.common.utils.StringUtils;
29 30
30 import de.intevation.flys.artifacts.FLYSArtifact; 31 import de.intevation.flys.artifacts.FLYSArtifact;
31 32
32 import de.intevation.flys.backend.SedDBSessionHolder; 33 import de.intevation.flys.backend.SessionFactoryProvider;
33 import de.intevation.flys.backend.SessionHolder; 34 import de.intevation.flys.backend.SessionHolder;
34 35
35 import de.intevation.artifactdatabase.data.StateData; 36 import de.intevation.artifactdatabase.data.StateData;
36 37
37 import de.intevation.flys.artifacts.datacage.templating.Builder; 38 import de.intevation.flys.artifacts.datacage.templating.Builder;
216 parameters, userId, result, 217 parameters, userId, result,
217 systemConnection, 218 systemConnection,
218 (Connection)null); 219 (Connection)null);
219 } 220 }
220 }); 221 });
221 /*
222 systemSession.doWork(new Work() { 222 systemSession.doWork(new Work() {
223 @Override 223 @Override
224 public void execute(final Connection systemConnection) 224 public void execute(final Connection systemConnection)
225 throws SQLException 225 throws SQLException
226 { 226 {
227 SedDBSessionHolder.HOLDER.get().doWork(new Work() { 227 SessionFactory sedDBFactory =
228 @Override 228 SessionFactoryProvider.getSedDBSessionFactory();
229 public void execute(Connection sedDBConnection) 229
230 throws SQLException 230 Session sedDBSession = sedDBFactory.openSession();
231 { 231 try {
232 recommend( 232 sedDBSession.doWork(new Work() {
233 parameters, userId, result, 233 @Override
234 systemConnection, 234 public void execute(Connection sedDBConnection)
235 sedDBConnection); 235 throws SQLException
236 } 236 {
237 }); 237 recommend(
238 parameters, userId, result,
239 systemConnection,
240 sedDBConnection);
241 }
242 });
243 }
244 finally {
245 sedDBSession.close();
246 }
238 } 247 }
239 }); 248 });
240 */
241 } 249 }
242 250
243 public void recommend( 251 public void recommend(
244 Map<String, Object> parameters, 252 Map<String, Object> parameters,
245 String userId, 253 String userId,

http://dive4elements.wald.intevation.org