diff --git a/api/src/main/java/javax/config/ConfigProvider.java b/api/src/main/java/javax/config/ConfigProvider.java index 189cdc7..bdc6cc8 100644 --- a/api/src/main/java/javax/config/ConfigProvider.java +++ b/api/src/main/java/javax/config/ConfigProvider.java @@ -71,7 +71,10 @@ * @author Viktor Klang */ public final class ConfigProvider { - private static final ConfigProviderResolver INSTANCE = ConfigProviderResolver.instance(); + + private static class LazyHolder { + private static final ConfigProviderResolver INSTANCE = ConfigProviderResolver.instance(); + } private ConfigProvider() { } @@ -86,7 +89,7 @@ private ConfigProvider() { * @return the config object for the thread context classloader */ public static Config getConfig() { - return INSTANCE.getConfig(); + return LazyHolder.INSTANCE.getConfig(); } /** @@ -100,6 +103,6 @@ public static Config getConfig() { * @return the config for the specified classloader */ public static Config getConfig(ClassLoader classloader) { - return INSTANCE.getConfig(classloader); + return LazyHolder.INSTANCE.getConfig(classloader); } }