[Schmitzm-commits] r2028 - trunk/schmitzm-core/src/main/java/de/schmitzm/regex
scm-commit at wald.intevation.org
scm-commit at wald.intevation.org
Sun May 27 16:19:53 CEST 2012
Author: alfonx
Date: 2012-05-27 16:19:53 +0200 (Sun, 27 May 2012)
New Revision: 2028
Modified:
trunk/schmitzm-core/src/main/java/de/schmitzm/regex/RegexCache.java
Log:
Modified: trunk/schmitzm-core/src/main/java/de/schmitzm/regex/RegexCache.java
===================================================================
--- trunk/schmitzm-core/src/main/java/de/schmitzm/regex/RegexCache.java 2012-05-27 13:11:59 UTC (rev 2027)
+++ trunk/schmitzm-core/src/main/java/de/schmitzm/regex/RegexCache.java 2012-05-27 14:19:53 UTC (rev 2028)
@@ -37,7 +37,7 @@
* TODO Ein String der länger ist als die hier angegebene Anzahl Zeichen wir nicht gecached. Die Wahrscheinlichkeit,
* dass der selbe Sting nochmal auftaucht wird als zu gering eingeschätzt.
**/
- private static final int CACHE_VALUES_TO_RESULT_MAX_VALUE_LENGTH = 1000;
+ private static final int CACHE_VALUES_TO_RESULT_MAX_VALUE_LENGTH = 500;
/**
* TODO Ein String der kürzer als die hier angegebene Anzahl Zeichen wir nicht gecached.
@@ -56,7 +56,7 @@
return singletonInstance != null ? singletonInstance : new RegexCache();
}
- private final ConcurrentLRUCache<Pattern, ConcurrentLRUCache<String, MyMatchResult>> resultsCache = new ConcurrentLRUCache<Pattern, ConcurrentLRUCache<String, MyMatchResult>>(
+ private final ConcurrentLRUCache<String, MyMatchResult> resultsCache = new ConcurrentLRUCache<String, MyMatchResult>(
150000, 100000);
private RegexCache() {
@@ -149,18 +149,9 @@
return found ? m.toMatchResult() : null;
}
- final Pattern pattern = getPattern(regex);
-
- ConcurrentLRUCache<String, MyMatchResult> m;
- m = resultsCache.get(pattern);
- if (m == null) {
- resultsCache.put(pattern, m = new ConcurrentLRUCache<String, MyMatchResult>(50, 20));
- }
-
- MyMatchResult mResult;
- mResult = m.get(value);
+ final String key = regex + ":*:" + value;
+ MyMatchResult mResult = resultsCache.get(key);
if (mResult == null) {
-
// final Matcher xm = pattern.matcher(value);
final Matcher xm = getMatcher(regex, value);
@@ -169,7 +160,7 @@
else
mResult = new MyMatchResult(null);
- m.put(value, mResult); // Hat die gefehlt?
+ resultsCache.put(key, mResult);
}
return mResult.matcherResult;
More information about the Schmitzm-commits
mailing list