# HG changeset patch # User Sascha L. Teichmann # Date 1311862353 0 # Node ID cdb35d96ca09b05bfc824bd0a06fd502c070df13 # Parent 1dbafbba50ea8554d1742179be829602c5fbdc37 Importer session: Make use of the LRU cache from artifacts common. flys-backend/trunk@2415 c6561f87-3c4e-4783-a992-168aeb5c3f6f diff -r 1dbafbba50ea -r cdb35d96ca09 flys-backend/ChangeLog --- a/flys-backend/ChangeLog Tue Jul 19 10:10:51 2011 +0000 +++ b/flys-backend/ChangeLog Thu Jul 28 14:12:33 2011 +0000 @@ -1,3 +1,8 @@ +2011-07-28 Sascha L. Teichmann + + * src/main/java/de/intevation/flys/importer/ImporterSession.java: + Make use of the LRU cache from artifacts common. + 2011-07-18 Sascha L. Teichmann * doc/schema/postgresql.sql: Added missing foreign key contraint on hyks table. diff -r 1dbafbba50ea -r cdb35d96ca09 flys-backend/src/main/java/de/intevation/flys/importer/ImporterSession.java --- a/flys-backend/src/main/java/de/intevation/flys/importer/ImporterSession.java Tue Jul 19 10:10:51 2011 +0000 +++ b/flys-backend/src/main/java/de/intevation/flys/importer/ImporterSession.java Thu Jul 28 14:12:33 2011 +0000 @@ -3,7 +3,6 @@ import java.util.Iterator; import java.util.Map; import java.util.TreeMap; -import java.util.LinkedHashMap; import java.math.BigDecimal; @@ -23,19 +22,12 @@ import org.apache.log4j.Logger; +import de.intevation.artifacts.common.utils.LRUCache; + public class ImporterSession { private static Logger log = Logger.getLogger(ImporterSession.class); - public static final int CACHE_SIZE = 25; - - public static class Cache extends LinkedHashMap { - @Override - protected boolean removeEldestEntry(Map.Entry eldest) { - return size() > CACHE_SIZE; - } - }; - private static final ThreadLocal SESSION = new ThreadLocal() { @Override @@ -46,13 +38,13 @@ protected Session databaseSession; - protected Cache> + protected LRUCache> wstColumnValues; - protected Cache> + protected LRUCache> dischargeTableValues; - protected Cache> + protected LRUCache> ranges; public static ImporterSession getInstance() { @@ -66,12 +58,12 @@ //databaseSession.setFlushMode(FlushMode.MANUAL); wstColumnValues = - new Cache>(); + new LRUCache>(); dischargeTableValues = - new Cache>(); + new LRUCache>(); - ranges = new Cache>(); + ranges = new LRUCache>(); } public Session getDatabaseSession() {