diff options
author | David A. Madore <david+git@madore.org> | 2014-10-05 01:13:30 +0200 |
---|---|---|
committer | David A. Madore <david+git@madore.org> | 2014-10-05 01:13:30 +0200 |
commit | e915feb1602a7d88c39623da055fe68af422d27c (patch) | |
tree | 422ff495c24f6185c28071a950f6c8d688e72800 /org/madore/damlengine/WeblogDatabaseConnection.java | |
parent | 81105d8785341817023d3ee2d19f6f814748ae77 (diff) | |
download | damlengine-e915feb1602a7d88c39623da055fe68af422d27c.tar.gz damlengine-e915feb1602a7d88c39623da055fe68af422d27c.tar.bz2 damlengine-e915feb1602a7d88c39623da055fe68af422d27c.zip |
Introduce at least a semblance of thread-safety.
Diffstat (limited to 'org/madore/damlengine/WeblogDatabaseConnection.java')
-rw-r--r-- | org/madore/damlengine/WeblogDatabaseConnection.java | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/org/madore/damlengine/WeblogDatabaseConnection.java b/org/madore/damlengine/WeblogDatabaseConnection.java index fc485a6..16d0973 100644 --- a/org/madore/damlengine/WeblogDatabaseConnection.java +++ b/org/madore/damlengine/WeblogDatabaseConnection.java @@ -15,10 +15,12 @@ public final class WeblogDatabaseConnection { throw new AssertionError("WeblogDatabaseConnection cannot be instantiated"); } - public static Connection conn; + public static ThreadLocal<Connection> pconn + = new ThreadLocal<Connection>(); public static Connection getConnection() throws SQLException { + Connection conn = pconn.get(); if ( conn == null ) { String dbHost = null; if ( ! DamlEngine.runAsServlet ) @@ -106,6 +108,7 @@ public final class WeblogDatabaseConnection { dbProps.setProperty("sslfactory", "org.postgresql.ssl.NonValidatingFactory"); conn = (new Driver()).connect(dbUrl, dbProps); conn.createStatement().execute("SET TIME ZONE 0"); + pconn.set(conn); } return conn; } |