Spring Security Framework

org.springframework.security.providers.dao.cache
Class EhCacheBasedUserCache

java.lang.Object
  extended by org.springframework.security.providers.dao.cache.EhCacheBasedUserCache
All Implemented Interfaces:
InitializingBean, UserCache

public class EhCacheBasedUserCache
extends Object
implements UserCache, InitializingBean

Caches User objects using a Spring IoC defined EHCACHE.

Version:
$Id$
Author:
Ben Alex

Constructor Summary
EhCacheBasedUserCache()
           
 
Method Summary
 void afterPropertiesSet()
           
 net.sf.ehcache.Ehcache getCache()
           
 UserDetails getUserFromCache(String username)
          Obtains a UserDetails from the cache.
 void putUserInCache(UserDetails user)
          Places a UserDetails in the cache.
 void removeUserFromCache(String username)
          Removes the specified user from the cache.
 void removeUserFromCache(UserDetails user)
           
 void setCache(net.sf.ehcache.Ehcache cache)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

EhCacheBasedUserCache

public EhCacheBasedUserCache()
Method Detail

afterPropertiesSet

public void afterPropertiesSet()
                        throws Exception
Specified by:
afterPropertiesSet in interface InitializingBean
Throws:
Exception

getCache

public net.sf.ehcache.Ehcache getCache()

getUserFromCache

public UserDetails getUserFromCache(String username)
Description copied from interface: UserCache
Obtains a UserDetails from the cache.

Specified by:
getUserFromCache in interface UserCache
Parameters:
username - the User.getUsername() used to place the user in the cache
Returns:
the populated UserDetails or null if the user could not be found or if the cache entry has expired

putUserInCache

public void putUserInCache(UserDetails user)
Description copied from interface: UserCache
Places a UserDetails in the cache. The username is the key used to subsequently retrieve the UserDetails.

Specified by:
putUserInCache in interface UserCache
Parameters:
user - the fully populated UserDetails to place in the cache

removeUserFromCache

public void removeUserFromCache(UserDetails user)

removeUserFromCache

public void removeUserFromCache(String username)
Description copied from interface: UserCache
Removes the specified user from the cache. The username is the key used to remove the user. If the user is not found, the method should simply return (not thrown an exception).

Some cache implementations may not support eviction from the cache, in which case they should provide appropriate behaviour to alter the user in either its documentation, via an exception, or through a log message.

Specified by:
removeUserFromCache in interface UserCache
Parameters:
username - to be evicted from the cache

setCache

public void setCache(net.sf.ehcache.Ehcache cache)

Spring Security Framework

Copyright © 2004-2010 SpringSource, Inc. All Rights Reserved.