KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > info > jtrac > acegi > GuestAuthenticationProvider


1 /*
2  * Copyright 2002-2005 the original author or authors.
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */

16
17 package info.jtrac.acegi;
18
19 import info.jtrac.Jtrac;
20 import info.jtrac.domain.Space;
21 import info.jtrac.domain.User;
22 import java.util.List JavaDoc;
23 import org.acegisecurity.Authentication;
24 import org.acegisecurity.AuthenticationException;
25 import org.acegisecurity.providers.AuthenticationProvider;
26 import org.acegisecurity.providers.UsernamePasswordAuthenticationToken;
27 import org.apache.commons.logging.Log;
28 import org.apache.commons.logging.LogFactory;
29
30 /**
31  * Custom Acegi Authentication Provider designed to plug along with other Aceg
32  * providers and implement our custom "anonymous" Authentication strategy
33  * This allows users to browse projects that have "Guest Allowed"
34  * without signing on.
35  */

36 public class GuestAuthenticationProvider implements AuthenticationProvider {
37     
38     private final Log logger = LogFactory.getLog(getClass());
39     
40     public boolean supports(Class JavaDoc clazz) {
41         return (GuestAuthenticationToken.class.isAssignableFrom(clazz));
42     }
43     
44     public Authentication authenticate(Authentication authentication) throws AuthenticationException {
45         if (!supports(authentication.getClass())) {
46             return null;
47         }
48         return authentication;
49     }
50     
51 }
52
Popular Tags