X-Git-Url: http://gitweb.fperrin.net/?p=Dictionary.git;a=blobdiff_plain;f=src%2Fcom%2Fhughes%2Fandroid%2Fdictionary%2Fengine%2FTransliteratorManager.java;h=e328265f60bba9defbf72172df2e658d28bca88c;hp=9613d9fccc8ba7a84328f11abfabb681fd48a200;hb=83d9dc7cd871082a82c2dd0dbb7a0ceabd7c83a0;hpb=2a89cb08c7c36c78b2276ddc8d77e470dfe7ec78 diff --git a/src/com/hughes/android/dictionary/engine/TransliteratorManager.java b/src/com/hughes/android/dictionary/engine/TransliteratorManager.java index 9613d9f..e328265 100644 --- a/src/com/hughes/android/dictionary/engine/TransliteratorManager.java +++ b/src/com/hughes/android/dictionary/engine/TransliteratorManager.java @@ -26,17 +26,17 @@ public class TransliteratorManager { private static boolean starting = false; private static boolean ready = false; private static ThreadSetup threadSetup = null; - private static LRUCacheMap cache = new LRUCacheMap(4); + private static final LRUCacheMap cache = new LRUCacheMap<>(4); // Whom to notify when we're all set up and ready to go. - private static List callbacks = new ArrayList(); + private static final List callbacks = new ArrayList<>(); public static Transliterator get(String rules) { // DO NOT make the method synchronized! // synchronizing on the class would break the whole // asynchronous init concept, since the runnable // then holds the same lock as the init function needs. - Transliterator result = null; + Transliterator result; synchronized (cache) { result = cache.get(rules); if (result == null) { @@ -74,9 +74,9 @@ public class TransliteratorManager { System.out.println("Wrong transliteration: " + transliterated); } - final List callbacks = new ArrayList(); + final List callbacks; synchronized (TransliteratorManager.class) { - callbacks.addAll(TransliteratorManager.callbacks); + callbacks = new ArrayList<>(TransliteratorManager.callbacks); ready = true; } for (final Callback callback : callbacks) {