Spring Security Framework

org.springframework.security.ui.rememberme
Class JdbcTokenRepositoryImpl

java.lang.Object
  extended by org.springframework.dao.support.DaoSupport
      extended by org.springframework.jdbc.core.support.JdbcDaoSupport
          extended by org.springframework.security.ui.rememberme.JdbcTokenRepositoryImpl
All Implemented Interfaces:
InitializingBean, PersistentTokenRepository

public class JdbcTokenRepositoryImpl
extends JdbcDaoSupport
implements PersistentTokenRepository

JDBC based persistent login token repository implementation.

Since:
2.0
Version:
$Id$
Author:
Luke Taylor

Nested Class Summary
protected  class JdbcTokenRepositoryImpl.InsertToken
           
protected  class JdbcTokenRepositoryImpl.RemoveUserTokens
           
protected  class JdbcTokenRepositoryImpl.TokensBySeriesMapping
           
protected  class JdbcTokenRepositoryImpl.UpdateToken
           
 
Field Summary
static String CREATE_TABLE_SQL
          Default SQL for creating the database table to store the tokens
static String DEF_INSERT_TOKEN_SQL
          The default SQL used by createNewToken
static String DEF_REMOVE_USER_TOKENS_SQL
          The default SQL used by removeUserTokens
static String DEF_TOKEN_BY_SERIES_SQL
          The default SQL used by the getTokenBySeries query
static String DEF_UPDATE_TOKEN_SQL
          The default SQL used by updateToken
protected  SqlUpdate insertToken
           
protected  SqlUpdate removeUserTokens
           
protected  MappingSqlQuery tokensBySeriesMapping
           
protected  SqlUpdate updateToken
           
 
Fields inherited from class org.springframework.dao.support.DaoSupport
logger
 
Constructor Summary
JdbcTokenRepositoryImpl()
           
 
Method Summary
 void createNewToken(PersistentRememberMeToken token)
           
 PersistentRememberMeToken getTokenForSeries(String seriesId)
          Loads the token data for the supplied series identifier.
protected  void initDao()
           
 void removeUserTokens(String username)
           
 void setCreateTableOnStartup(boolean createTableOnStartup)
          Intended for convenience in debugging.
 void updateToken(String series, String tokenValue, Date lastUsed)
           
 
Methods inherited from class org.springframework.jdbc.core.support.JdbcDaoSupport
checkDaoConfig, createJdbcTemplate, getConnection, getDataSource, getExceptionTranslator, getJdbcTemplate, initTemplateConfig, releaseConnection, setDataSource, setJdbcTemplate
 
Methods inherited from class org.springframework.dao.support.DaoSupport
afterPropertiesSet
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

CREATE_TABLE_SQL

public static final String CREATE_TABLE_SQL
Default SQL for creating the database table to store the tokens

See Also:
Constant Field Values

DEF_TOKEN_BY_SERIES_SQL

public static final String DEF_TOKEN_BY_SERIES_SQL
The default SQL used by the getTokenBySeries query

See Also:
Constant Field Values

DEF_INSERT_TOKEN_SQL

public static final String DEF_INSERT_TOKEN_SQL
The default SQL used by createNewToken

See Also:
Constant Field Values

DEF_UPDATE_TOKEN_SQL

public static final String DEF_UPDATE_TOKEN_SQL
The default SQL used by updateToken

See Also:
Constant Field Values

DEF_REMOVE_USER_TOKENS_SQL

public static final String DEF_REMOVE_USER_TOKENS_SQL
The default SQL used by removeUserTokens

See Also:
Constant Field Values

tokensBySeriesMapping

protected MappingSqlQuery tokensBySeriesMapping

insertToken

protected SqlUpdate insertToken

updateToken

protected SqlUpdate updateToken

removeUserTokens

protected SqlUpdate removeUserTokens
Constructor Detail

JdbcTokenRepositoryImpl

public JdbcTokenRepositoryImpl()
Method Detail

initDao

protected void initDao()
Overrides:
initDao in class DaoSupport

createNewToken

public void createNewToken(PersistentRememberMeToken token)
Specified by:
createNewToken in interface PersistentTokenRepository

updateToken

public void updateToken(String series,
                        String tokenValue,
                        Date lastUsed)
Specified by:
updateToken in interface PersistentTokenRepository

getTokenForSeries

public PersistentRememberMeToken getTokenForSeries(String seriesId)
Loads the token data for the supplied series identifier. If an error occurs, it will be reported and null will be returned (since the result should just be a failed persistent login).

Specified by:
getTokenForSeries in interface PersistentTokenRepository
Parameters:
seriesId -
Returns:
the token matching the series, or null if no match found or an exception occurred.

removeUserTokens

public void removeUserTokens(String username)
Specified by:
removeUserTokens in interface PersistentTokenRepository

setCreateTableOnStartup

public void setCreateTableOnStartup(boolean createTableOnStartup)
Intended for convenience in debugging. Will create the persistent_tokens database table when the class is initialized during the initDao method.

Parameters:
createTableOnStartup - set to true to execute the

Spring Security Framework

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