01: /*
02: * BEGIN_HEADER - DO NOT EDIT
03: *
04: * The contents of this file are subject to the terms
05: * of the Common Development and Distribution License
06: * (the "License"). You may not use this file except
07: * in compliance with the License.
08: *
09: * You can obtain a copy of the license at
10: * https://open-esb.dev.java.net/public/CDDLv1.0.html.
11: * See the License for the specific language governing
12: * permissions and limitations under the License.
13: *
14: * When distributing Covered Code, include this CDDL
15: * HEADER in each file and include the License file at
16: * https://open-esb.dev.java.net/public/CDDLv1.0.html.
17: * If applicable add the following below this CDDL HEADER,
18: * with the fields enclosed by brackets "[]" replaced with
19: * your own identifying information: Portions Copyright
20: * [year] [name of copyright owner]
21: */
22:
23: /*
24: * @(#)AuthenticatorFactory.java
25: * Copyright 2004-2007 Sun Microsystems, Inc. All Rights Reserved.
26: *
27: * END_HEADER - DO NOT EDIT
28: */
29: /**
30: * AuthenticatorFactory.java
31: *
32: * SUN PROPRIETARY/CONFIDENTIAL.
33: * This software is the proprietary information of Sun Microsystems, Inc.
34: * Use is subject to license terms.
35: *
36: * Created on February 8, 2005, 11:58 AM
37: */package com.sun.jbi.internal.security.auth;
38:
39: import com.sun.jbi.internal.security.UserDomain;
40:
41: /**
42: *
43: * @author Sun Microsystems, Inc.
44: */
45: public class AuthenticatorFactory {
46: /** JAAS Authenticator Class Name. */
47: private static final String JAAS_AUTHENTICATOR = "com.sun.jbi.internal.security.auth.JaasAuthenticator";
48:
49: /**
50: * Create a Authenticator based on the UserDomain.
51: *
52: * @param domain is the UserDomain instance.
53: * @throws IllegalArgumentException if the UserDomain has invalid values.
54: * @return the newly created Authenticator based on the UserDomain.
55: */
56: public static Authenticator createAuthenticator(UserDomain domain)
57: throws IllegalArgumentException {
58: // -- Use domain.getAuthType();
59: //AuthenticatorType authType = AuthenticatorType.valueOf("JAAS");
60: AuthenticatorType authType = AuthenticatorType.valueOf(domain
61: .getAuthType());
62: Authenticator ator = null;
63:
64: if (authType.equals(AuthenticatorType.JAAS)) {
65: ator = new JaasAuthenticator();
66: } else if (authType.equals(AuthenticatorType.SJSAS)) {
67: ator = new AppSrvAuthenticator();
68: } else {
69: throw new IllegalArgumentException(domain.getAuthType());
70: }
71: ator.initialize(domain);
72: return ator;
73:
74: }
75:
76: }
|