diff options
Diffstat (limited to 'libraries/spongycastle/core/src/main/jdk1.3/org/spongycastle/i18n/MissingEntryException.java')
-rw-r--r-- | libraries/spongycastle/core/src/main/jdk1.3/org/spongycastle/i18n/MissingEntryException.java | 81 |
1 files changed, 81 insertions, 0 deletions
diff --git a/libraries/spongycastle/core/src/main/jdk1.3/org/spongycastle/i18n/MissingEntryException.java b/libraries/spongycastle/core/src/main/jdk1.3/org/spongycastle/i18n/MissingEntryException.java new file mode 100644 index 000000000..582b9ab9b --- /dev/null +++ b/libraries/spongycastle/core/src/main/jdk1.3/org/spongycastle/i18n/MissingEntryException.java @@ -0,0 +1,81 @@ +package org.spongycastle.i18n; + +import java.net.URL; +import java.net.URLClassLoader; +import java.util.Locale; + +public class MissingEntryException + extends RuntimeException +{ + + protected final String resource; + protected final String key; + protected final ClassLoader loader; + protected final Locale locale; + + private Throwable cause; + private String debugMsg; + + public MissingEntryException(String message, String resource, String key, Locale locale, ClassLoader loader) + { + super(message); + this.resource = resource; + this.key = key; + this.locale = locale; + this.loader = loader; + } + + public MissingEntryException(String message, Throwable cause, String resource, String key, Locale locale, ClassLoader loader) + { + super(message); + this.cause = cause; + this.resource = resource; + this.key = key; + this.locale = locale; + this.loader = loader; + } + + public Throwable getCause() + { + return cause; + } + + public String getKey() + { + return key; + } + + public String getResource() + { + return resource; + } + + public ClassLoader getClassLoader() + { + return loader; + } + + public Locale getLocale() + { + return locale; + } + + public String getDebugMsg() + { + if (debugMsg == null) + { + debugMsg = "Can not find entry " + key + " in resource file " + resource + " for the locale " + locale + "."; + if (loader instanceof URLClassLoader) + { + URL[] urls = ((URLClassLoader) loader).getURLs(); + debugMsg += " The following entries in the classpath were searched: "; + for (int i = 0; i != urls.length; i++) + { + debugMsg += urls[i] + " "; + } + } + } + return debugMsg; + } + +} |