Author: michiel
Date: 2010-02-03 20:04:40 +0100 (Wed, 03 Feb 2010)
New Revision: 40846
Modified:
mmbase/branches/MMBase-1_9/core/src/main/java/org/mmbase/security/SecurityException.java
Log:
MMB-1924
Modified:
mmbase/branches/MMBase-1_9/core/src/main/java/org/mmbase/security/SecurityException.java
===================================================================
---
mmbase/branches/MMBase-1_9/core/src/main/java/org/mmbase/security/SecurityException.java
2010-02-03 16:34:51 UTC (rev 40845)
+++
mmbase/branches/MMBase-1_9/core/src/main/java/org/mmbase/security/SecurityException.java
2010-02-03 19:04:40 UTC (rev 40846)
@@ -9,15 +9,27 @@
*/
package org.mmbase.security;
+import java.util.*;
+import java.text.*;
+import org.mmbase.util.*;
+
+
/**
* Thrown by the security classes to indicate a security violation/malfunction.
- *
+ *
* @author Eduard Witteveen
* @version $Id$
*/
public class SecurityException extends java.lang.SecurityException {
private static final long serialVersionUID = -175749957183734250L;
+
+ private String bundle;
+ private String key;
+ private Object[] args;
+
+ private LocalizedString localizedMessage;
+
//javadoc is inherited
public SecurityException() {
super();
@@ -40,4 +52,36 @@
initCause(cause);
}
+ /**
+ * @since MMBase-1.9.3
+ */
+ public SecurityException(String bundle, String key, Object... arguments) {
+ super(MessageFormat.format(ResourceBundle.getBundle(bundle,
Locale.getDefault()).getString(key), arguments));
+ this.bundle = bundle;
+ this.key = key;
+ this.args = arguments;
+ }
+
+ /**
+ * @since MMBase-1.9.3
+ */
+ public SecurityException(LocalizedString message) {
+ super(message.get(null));
+ }
+
+
+
+ /**
+ * @since MMBase-1.9.3
+ */
+ public String getMessage(Locale locale) {
+ if (localizedMessage != null) {
+ return localizedMessage.get(locale);
+ } else if (bundle != null) {
+ return MessageFormat.format(ResourceBundle.getBundle(bundle,
locale).getString(key), args);
+ } else {
+ return getMessage();
+ }
+ }
+
}
_______________________________________________
Cvs mailing list
[email protected]
http://lists.mmbase.org/mailman/listinfo/cvs