mirror of
https://github.com/unicode-org/icu.git
synced 2025-04-08 06:53:45 +00:00
ICU-7434 switch RelativeDateTimeFormatter from SimpleCache to SoftCache
X-SVN-Rev: 38745
This commit is contained in:
parent
11ddfe3376
commit
6cc82d7089
1 changed files with 10 additions and 10 deletions
|
@ -9,13 +9,13 @@ package com.ibm.icu.text;
|
|||
import java.util.EnumMap;
|
||||
import java.util.Locale;
|
||||
|
||||
import com.ibm.icu.impl.CacheBase;
|
||||
import com.ibm.icu.impl.CalendarData;
|
||||
import com.ibm.icu.impl.DontCareFieldPosition;
|
||||
import com.ibm.icu.impl.ICUCache;
|
||||
import com.ibm.icu.impl.ICUData;
|
||||
import com.ibm.icu.impl.ICUResourceBundle;
|
||||
import com.ibm.icu.impl.SimpleCache;
|
||||
import com.ibm.icu.impl.SimpleFormatterImpl;
|
||||
import com.ibm.icu.impl.SoftCache;
|
||||
import com.ibm.icu.impl.StandardPlural;
|
||||
import com.ibm.icu.impl.UResource;
|
||||
import com.ibm.icu.lang.UCharacter;
|
||||
|
@ -864,17 +864,17 @@ public final class RelativeDateTimeFormatter {
|
|||
}
|
||||
|
||||
private static class Cache {
|
||||
private final ICUCache<String, RelativeDateTimeFormatterData> cache =
|
||||
new SimpleCache<String, RelativeDateTimeFormatterData>();
|
||||
private final CacheBase<String, RelativeDateTimeFormatterData, ULocale> cache =
|
||||
new SoftCache<String, RelativeDateTimeFormatterData, ULocale>() {
|
||||
@Override
|
||||
protected RelativeDateTimeFormatterData createInstance(String key, ULocale locale) {
|
||||
return new Loader(locale).load();
|
||||
}
|
||||
};
|
||||
|
||||
public RelativeDateTimeFormatterData get(ULocale locale) {
|
||||
String key = locale.toString();
|
||||
RelativeDateTimeFormatterData result = cache.get(key);
|
||||
if (result == null) {
|
||||
result = new Loader(locale).load();
|
||||
cache.put(key, result);
|
||||
}
|
||||
return result;
|
||||
return cache.getInstance(key, locale);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue