01: /* Copyright 2004, 2005, 2006 Acegi Technology Pty Limited
02: *
03: * Licensed under the Apache License, Version 2.0 (the "License");
04: * you may not use this file except in compliance with the License.
05: * You may obtain a copy of the License at
06: *
07: * http://www.apache.org/licenses/LICENSE-2.0
08: *
09: * Unless required by applicable law or agreed to in writing, software
10: * distributed under the License is distributed on an "AS IS" BASIS,
11: * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12: * See the License for the specific language governing permissions and
13: * limitations under the License.
14: */
15:
16: package org.acegisecurity;
17:
18: /**
19: * Thrown if an authentication request is rejected because the credentials are invalid. For this exception to be
20: * thrown, it means the account is neither locked nor disabled.
21: *
22: * @author Ben Alex
23: * @version $Id: BadCredentialsException.java 1601 2006-08-24 10:56:26Z luke_t $
24: */
25: public class BadCredentialsException extends AuthenticationException {
26: //~ Instance fields ================================================================================================
27:
28: private Object extraInformation;
29:
30: //~ Constructors ===================================================================================================
31:
32: /**
33: * Constructs a <code>BadCredentialsException</code> with the specified
34: * message.
35: *
36: * @param msg the detail message
37: */
38: public BadCredentialsException(String msg) {
39: super (msg);
40: }
41:
42: public BadCredentialsException(String msg, Object extraInformation) {
43: super (msg);
44: this .extraInformation = extraInformation;
45: }
46:
47: /**
48: * Constructs a <code>BadCredentialsException</code> with the specified
49: * message and root cause.
50: *
51: * @param msg the detail message
52: * @param t root cause
53: */
54: public BadCredentialsException(String msg, Throwable t) {
55: super (msg, t);
56: }
57:
58: //~ Methods ========================================================================================================
59:
60: /**
61: * Any additional information about the exception. Generally a <code>UserDetails</code> object.
62: *
63: * @return extra information or <code>null</code>
64: */
65: public Object getExtraInformation() {
66: return extraInformation;
67: }
68: }
|