org.springframework.security.core.userdetails
Class UserDetailsByNameServiceWrapper<T extends Authentication>

java.lang.Object
  extended by org.springframework.security.core.userdetails.UserDetailsByNameServiceWrapper<T>
All Implemented Interfaces:
InitializingBean, AuthenticationUserDetailsService<T>

public class UserDetailsByNameServiceWrapper<T extends Authentication>
extends Object
implements AuthenticationUserDetailsService<T>, InitializingBean

This implementation for AuthenticationUserDetailsService wraps a regular Spring Security UserDetailsService implementation, to retrieve a UserDetails object based on the user name contained in an Authentication object.

Since:
2.0

Constructor Summary
UserDetailsByNameServiceWrapper()
          Constructs an empty wrapper for compatibility with Spring Security 2.0.x's method of using a setter.
UserDetailsByNameServiceWrapper(UserDetailsService userDetailsService)
          Constructs a new wrapper using the supplied UserDetailsService as the service to delegate to.
 
Method Summary
 void afterPropertiesSet()
          Check whether all required properties have been set.
 UserDetails loadUserDetails(T authentication)
          Get the UserDetails object from the wrapped UserDetailsService implementation
 void setUserDetailsService(UserDetailsService aUserDetailsService)
          Set the wrapped UserDetailsService implementation
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

UserDetailsByNameServiceWrapper

public UserDetailsByNameServiceWrapper()
Constructs an empty wrapper for compatibility with Spring Security 2.0.x's method of using a setter.


UserDetailsByNameServiceWrapper

public UserDetailsByNameServiceWrapper(UserDetailsService userDetailsService)
Constructs a new wrapper using the supplied UserDetailsService as the service to delegate to.

Parameters:
userDetailsService - the UserDetailsService to delegate to.
Method Detail

afterPropertiesSet

public void afterPropertiesSet()
                        throws Exception
Check whether all required properties have been set.

Specified by:
afterPropertiesSet in interface InitializingBean
Throws:
Exception
See Also:
InitializingBean.afterPropertiesSet()

loadUserDetails

public UserDetails loadUserDetails(T authentication)
                            throws UsernameNotFoundException
Get the UserDetails object from the wrapped UserDetailsService implementation

Specified by:
loadUserDetails in interface AuthenticationUserDetailsService<T extends Authentication>
Parameters:
authentication - The pre-authenticated authentication token
Returns:
UserDetails for the given authentication token, never null.
Throws:
UsernameNotFoundException - if no user details can be found for the given authentication token

setUserDetailsService

public void setUserDetailsService(UserDetailsService aUserDetailsService)
Set the wrapped UserDetailsService implementation

Parameters:
aUserDetailsService - The wrapped UserDetailsService to set