diff --git a/python/rest/src/com/jetbrains/rest/RestBundle.java b/python/rest/src/com/jetbrains/rest/RestBundle.java index 93549f6ee20c..c4d75ef92de2 100644 --- a/python/rest/src/com/jetbrains/rest/RestBundle.java +++ b/python/rest/src/com/jetbrains/rest/RestBundle.java @@ -15,40 +15,19 @@ */ package com.jetbrains.rest; -import com.intellij.CommonBundle; -import com.intellij.reference.SoftReference; +import com.intellij.DynamicBundle; import org.jetbrains.annotations.NonNls; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.PropertyKey; -import java.lang.ref.Reference; -import java.util.ResourceBundle; +public class RestBundle extends DynamicBundle { + @NonNls private static final String BUNDLE = "com.jetbrains.rest.RestBundle"; + private static final RestBundle INSTANCE = new RestBundle(); -// A copy of Ruby's. - -/** - * User : catherine - */ -public class RestBundle { + private RestBundle() { super(BUNDLE); } + @NotNull public static String message(@NotNull @PropertyKey(resourceBundle = BUNDLE) String key, @NotNull Object... params) { - return CommonBundle.message(getBundle(), key, params); + return INSTANCE.getMessage(key, params); } - - private static Reference ourBundle; - @NonNls - private static final String BUNDLE = "com.jetbrains.rest.RestBundle"; - - private RestBundle() { - } - - // Cached loading - private static ResourceBundle getBundle() { - ResourceBundle bundle = SoftReference.dereference(ourBundle); - if (bundle == null) { - bundle = ResourceBundle.getBundle(BUNDLE); - ourBundle = new SoftReference<>(bundle); - } - return bundle; - } -} +} \ No newline at end of file